爬虫
介绍:利用python进行网站图片的爬取,主要使用正则表达式
步骤:
第一种方法:1,找到网站的网址,保存在html 变量中
2,写出正则表达式,保存想要留下来的东西,并且创建一个文件夹,用以保存图片
3,写出代码,进行爬取
第二种方法:1,找到网站的源代码,保存在一个 .txt 文档中,并且把他赋给 html
2,写出正则表达式,保存想要留下来的东西,并且创建一个文件夹,用以保存图片
3,写出代码,进行爬取
创建的形式如下:
1,创建的 .txt 用来存储网站源代码
2,创建的文件夹,用来存储图片
代码实战:
import re
import requests
# f = open('sexypic_source.txt', 'r')
# 可以把网站的源代码放入创建的 sexypic_source.txt 中,然后在文档中爬取
# html = f.read()
# print(html)
# f.close()
html = requests.get('https://wallhaven.cc/search?q=sexy&page=2').text
# print(html)
#匹配图片网址
# 用正则表达式描述出语句形式,保留下需要的图片地址
pic_url = re.findall('img alt="loading" class="lazyload" data-src="(.*?)" src=', html, re.S)
i = 0
for each in pic_url:
print ('now downloading' + each)
sexypic = requests.get(each)
# sexypic 是创建的一个文件夹,用来存储从网站上爬下来的图片
fp = open('sexypic\\' + str(i) + '.jpg', 'wb')
fp.write(sexypic.content)
fp.close()
i += 1
泡泡:
可能有些人的pycharm 中 没有 request module(模块),在这里给出一个request 源码下载地址
https://github.com/requests/requests 可以直接下载,然后解压到安装python 的目录下,在命令行中,
输入命令:python setup.py install 回车即可
另外,我这次爬取的网站是 一个国外的高清壁纸网站,上面有很多不错的壁纸,在这里我把网站贴出来
https://wallhaven.cc/ ,在上面直接搜索你想要的壁纸类型即可
如果打开较慢的话,使用谷歌浏览器会好一点,ok,收工。