人生苦短,我用python;作为一种“胶水语言”,python为无数码农带来了便利;同时,越来越多的python工程师被标榜为”高薪党”;“全民python"的时代渐渐到来,你准备好了吗?
下面,就让我们用一个实例,具体地感受一下python 的魅力吧!
前期准备:Python版本:Python3
运行平台:Windows
IDE:PyCharm
浏览器:Chrome
项目介绍:
本项目利用 python 对网页上的图片进行爬取并下载,由于该网站较为简单、原始数据信息直白、无反爬干扰等,读者可从整体上直观地了解到爬虫的流程,适合大部分初学者;同时,该文章展示了源代码,且本项目上升空间很大,读者可将其加以延伸,在此不过多赘述。
网站信息:
http://qq.yh31.com/zjbq/0636124.html
具体步骤:
首先,我们导入第三方库,方便之后使用:import requests
from lxml import etree
from om urllib.request imp import urlretrieve
为操作规范,我们定义一个函数def getPhoto():
注:以下内容为函数内部内容,需整体向右缩进# 确定 url
url = "http://qq.yh31.com/zjbq/0636124.html"
# 发起请求
response = requests.get(url)
打开网页,查看源代码可知,应采用 “utf-8” 的编码格式
因此,添加如下代码:# 将 ASCII 格式转换为可包含中文格式的 utf-8
response.encoding = 'utf-8'
接下来,对目标网页的数据进行解析:# 将数据转化为 html 对象
html = = etree.HTML(res(ML(response.text)
# 查找数据
data = = html.xpath('//('//div[@class = "c_content_overflow"]/p/img/@src')
对网页进行拼接:# 定义num记录数据
num = 1
for photoStr in data:
urlStr = 'http://qq.yh31.com' + photoStr
注:以下内容全在for循环里
最后下载图片:
新建一个目录,在当前文件下依次操作:右键、选择 New、选择 Directory:
右键新建的目录,选择 Copy Path,复制目录路径:
之后用urlretrieve函数下载图片:# 注:其中“——?——”部分为刚才复制的路径
urlretrieve(urlStr,r'C:\Users\——?——\PycharmProjects\reptile\图片/%d.jpg'%num)
num += 1
# 其中%d.jpg'%num可实现动态命名
0K,后就调用函数了。getPhoto()
这是运行后的结果:
好了,这个简单的爬虫就写好了,希望能帮到大家。See You!