• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python爬虫入门教程之糗百图片爬虫代码分享

python爬虫入门教程之糗百图片爬虫代码分享

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了python爬虫入门,python爬虫入门教程,python爬虫入门书籍,python3爬虫入门教程,python3爬虫入门等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

学习python少不了写爬虫,不仅能以点带面地学习、练习使用python,爬虫本身也是有用且有趣的,大量重复性的下载、统计工作完全可以写一个爬虫程序完成。

用python写爬虫需要python的基础知识、涉及网络的几个模块、正则表达式、文件操作等知识。昨天在网上学习了一下,写了一个爬虫自动下载「糗事百科」里面的图片。源代码如下:

# -*- coding: utf-8 -*-
# 上面那句让代码里支持中文

#--------------------------------------- 
#   程序:糗百图片爬虫 
#   版本:0.1 
#   作者:赵伟 
#   日期:2013-07-25 
#   语言:Python 2.7 
#   说明:能设置下载的页数。没有做更多抽象和交互方面的优化。 
#---------------------------------------

import urllib2
import urllib
import re

#正则表达式,用来抓取图片的地址
pat = re.compile('<div class="thumb">\\n<img src=\"(ht.*?)\".*?>')

#用来合成网页的URL
nexturl1 = "http://m.qiushibaike.com/imgrank/page/"
nexturl2 = "?s=4582487&slow"

#页数计数
count = 1

#设置抓取的页数
while count < 3:

    print "Page " + str(count) + "\n"
    myurl = nexturl1 + str(count) + nexturl2
    myres = urllib2.urlopen(myurl)#抓取网页
    mypage = myres.read()#读取网页内容
    ucpage = mypage.decode("utf-8") #转码

    mat = pat.findall(ucpage)#用正则表达式抓取图片地址
       
    count += 1;
   
    if len(mat):
        for item in mat:
            print "url: " + item + "\n"
            fnp = re.compile('/(\w+\.\w+)$')#下面三行分离出图片文件的名称
            fnr = fnp.findall(item)
            fname = fnr[0]
            urllib.urlretrieve(item, fname)#下载图片
      
    else:
        print "no data"
</div>

使用方法:新建一个practice文件夹,将源代码保存为qb.py文件,并放在practice文件夹中,在命令行里执行python qb.py,即开始下载图片。可以修改源代码里面的while语句设置下载的页数。

</div>

您可能想查找下面的文章:

  • python入门教程之识别验证码
  • Python爬虫代理IP池实现方法
  • Python爬虫代理IP池实现方法
  • Python入门教程之运算符与控制流
  • Python入门教程之运算符与控制流
  • 玩转python爬虫之爬取糗事百科段子
  • 玩转python爬虫之爬取糗事百科段子
  • Python制作爬虫采集小说
  • python制作花瓣网美女图片爬虫
  • python制作最美应用的爬虫

相关文章

  • Python打印scrapy蜘蛛抓取树结构的方法
  • Python检测一个对象是否为字符串类的方法
  • Python使用minidom读写xml的方法
  • python实现字符串连接的三种方法及其效率、适用场景详解
  • python中pandas.DataFrame对行与列求和及添加新行与列示例
  • Python程序中的观察者模式结构编写示例
  • Python常用的文件及文件路径、目录操作方法汇总介绍
  • python学习笔记:字典的使用示例详解
  • Python实现将数据库一键导出为Excel表格的实例
  • 对于Python中线程问题的简单讲解

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Python写的一个定时重跑获取数据库数据
    • 处理Python中的URLError异常的方法
    • python中使用urllib2伪造HTTP报头的2个方法
    • 解析Python中的变量、引用、拷贝和作用域的问题
    • Python类的用法实例浅析
    • python清除指定目录内所有文件中script的方法
    • Python实现二分查找与bisect模块详解
    • 详解Python编程中对Monkey Patch猴子补丁开发方式的运用
    • python实现登陆知乎获得个人收藏并保存为word文件
    • Python for Informatics 第11章之正则表达式(四)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有