Python爬虫-爬取照片步骤
首先我们要明确我们的任务步骤
- 我们选取我们要爬取的网站
- 导入和下载python库文件(准备工作,也是爬虫的前提)
- 解析页面,选取内容
- 并保存图片
准备工作:
下载requests库文件:
pip install requests
导入库文件:
# -*- coding: UTF-8 -*-
import time
import requests
import re
import os
1.选取网址
图片链接: https://www.vmgirls.com/14126.html
response = requests.get('https://www.vmgirls.com/14126.html',headers=headers)
利用python库文件的requests库爬虫,并设置headers跳过反爬干扰
headers:
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'
}
headers里面的内容随随便写,只是为了让网址识别不出来你是使用python技术在进行爬虫,如果不设置headers的话,会被识别出爬虫技术,网址将会启用反爬,打印将出现403错误,如下图:
3.解析网页
我们进行设置一个文件夹存放照片
dir_name = re.findall('<h1 class="post-title h3">(.*?)</h1>',html)[-1]
再进行url的解析,对于我门要爬取得内容信息进行甄别
if not os.path.exists(dir_name):
os.mkdir(dir_name)
urls = re.findall('<a href="(.*?)" alt=".*?" title=".*?">',html)
print(urls)
4.最后保存图片
这个设置一个出错时间,防止爬崩人家网站
time.sleep(1)
for url in urls:
time.sleep(1)
# 图片名字
file_name=url.split('/')[-1]
response = requests.get(url, headers=headers)
with open(dir_name + '/' + file_name,'wb') as f:
f.write(response.content)
最后看看效果图: