python3.3.3 爬取图片链接

               前几天在网上看了些爬虫视屏,所以自己也亲手试了下,主要是环境搭建比较麻烦,但代码相当简单,接下来开始进行爬虫吧!

       第一步,先搭建好环境,我用的是python3.3.3和urllib3。urllib3包需要自己搭建。但安装包需要用到pip工具,这里是其他人写的一篇pip安装的博文,附上链接。
https://www.cnblogs.com/allan-king/p/5445879.html然后是装urllib3包,这个需要到官网下载,附上链接https://pypi.org/project/urllib3/#files,我选的是Wheel类型的。下载到./python3.3.3/Scripts/     命令行输入

             python -m pip install urllib3    

           安装成功后,就可以导入urllib3包了。第二步,找到一个目标网址,也就是要爬取内容的网页,我选择的是http://www.doutula.com/article/list/?page=1",我们想从这个网址上爬取图片链接。分析网页html内容后,发现图片链接旁边内容为

                 data-original="http://img.doutula.com/production/uploads/image//2018/06/21/20180621549184_XsjZBx.gif!dta" data-backup="http://img.doutula.com/production/uploads/image//2018/06/21/20180621549184_XsjZBx.gif!dta" alt="捏脸">

                怎样从html内容中提取有用信息呢,想到了正则表达式,以下附上所有源码

    

import urllib3 	#导入urllib3包
import re		#导入re包

#获取网站某页数据
def getText(page_number):
	#实例化
	http = urllib3.PoolManager()
	#访问网站
	page = http.request('GET',"http://www.doutula.com/article/list/?page="+str(page_number))
	#处理数据为UTF-8类型字符
	html = page.data.decode('utf-8')

	#正则表达式,括号中的为有用数据
	reg = "data-original=(.*?) data-backup"
	reg += ".*?"
	reg += "alt=(.*?)>"
	
	#html内容匹配正则表达式
	page = re.compile(reg)
	artlist = re.findall(page,html)

	#循环输出结果列表
	for arts in artlist:
		print(arts)

#获取第四页数据		
#getText(4)

#获取第一页到第100页数据
for i in range(1,101):
	getText(i)




你可能感兴趣的:(python)