1、博客目前在学习爬虫课程,使用正则表达式来爬取网页的图片信息
2、下面我们一起来回归下Python中的正则使用方式/方法
3、糗事百科图片爬取源码如下:
import requests
import re
import os
if __name__ == '__main__':
# headers请求头信息
headers = {
'User-Agent':'Mozilla/5.0 (windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36'
}
# 新建文件夹用来存储糗事图片
if not os.path.exists('./qiushilibs'):
os.makedirs('./qiushilibs')
# Url进行封装循环分页爬取
url = 'https://www.qiushibaike.com/imgrank/page/%d/'
for page in range(1,2):
new_url = format(url%page)
# 调用get请求获取text字符串
page_source = requests.get(url=new_url,headers=headers).text
# 正则表达式:使用到非贪婪模式
ER = r'<div >.*?<img src="(.*?)" alt.*?</div>'
# 返回List数组
img_src_List = re.findall(ER,page_source,re.S)
for src in img_src_List:
# 遍历拼接图片URL
src = 'https:'+src
# 下载图片新建请求
# 以二进制流的方式存储
img_content = requests.get(url=src,headers=headers).content
# print(img_content)
# 生成图片的名称
imgname = src.split('/')[-1]
# 图片路径
imgPath = './qiushilibs/'+imgname
# 持久化存储
with open(imgPath,'wb') as fp:
fp.write(img_content)
print(imgname,'下载成功!!!')
总结
以上是内存溢出为你收集整理的Python+Requests+Re(正则)爬取某糗事百科图片(数据分析一)全部内容,希望文章能够帮你解决Python+Requests+Re(正则)爬取某糗事百科图片(数据分析一)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)