<返回更多

爬取妹子照片(简单入门)

2020-07-02    
加入收藏

简单爬虫

今天深圳的晚上很冷,半夜就睡醒了,出去买点吃的难受的一批

说好的24小时呢?

开搞开搞安装第三方库

安装第三方请求库(requests)

pip install requests请求页面

爬取妹子照片(简单入门)

请求成功了

存在特殊情况:请求失败

原因八成是网页知道我们是Python过来的不给我们请求。

爬取妹子照片(简单入门)

这里教各路神仙去解决这个User-Agent的尴尬问题:

爬取妹子照片(简单入门)

嗯…怎么看网页的啊?

啊Sir。来了不要催

(只好打马赛克了)

爬取妹子照片(简单入门)

## 请求网页

import requests

headers={'User-Agent':'only老K'# 这里可以随意输入,也可以输入网页上面的User-Agent

}

response = requests.get('https://www.vmgirls.com/12945.html')

print(response.request.headers)

print(response.text)

解析网页

需要使用 re库来进行正则匹配

找到我们的图片的位置

爬取妹子照片(简单入门)

上面注意看匹配内容

然后进行解析(我们不是什么都需要匹配的,只是需要匹配href里面的内容)

爬取妹子照片(简单入门)

## 请求网页

import requests

import re

headers = {'User-Agent':'only老K'# 这里可以随意输入,也可以输入网页上面的User-Agent

}

response = requests.get('https://www.vmgirls.com/12945.html')#然后这里就吧上面的headers放进去

#response = requests.get('https://www.vmgirls.com/12945.html',headers=headers)

# print(response.request.headers)

# print(response.text)

html = response.text

#解析网页

urls = re.findall('<a href="(.*?)" alt=".*?" title=".*?">',html) # (.*?) 意思就是匹配这个数据

print(urls)

保存图片

第一版本:(文件存在在当前的文件夹,没有创建出来分类)

User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器

## 请求网页

import requests

import re

import time

headers = {

'User-Agent':'only老K'# 这里可以随意输入,也可以输入网页上面的User-Agent

}

response = requests.get('https://www.vmgirls.com/12945.html')

# print(response.request.headers)

# print(response.text)

html = response.text

#解析网页

urls = re.findall('<a href="(.*?)" alt=".*?" title=".*?">',html)

print(urls)

# 保存图片

for url in urls:

time.sleep(1) #睡眠一秒,别把别人网站查崩了

file_name = url.split('/')[-1]

response = requests.get(url) # 重新请求网站 图片地址就可以直接看了

with open(file_name,'wb') as f: #'wb':二进制 file_name:图片名称

f.write(response.content)

图片就有了…

爬取妹子照片(简单入门)

有问题?有点…不可能数据啥子的都放这里吧…

爬取妹子照片(简单入门)

现在处理## 请求网页

import requests

import re

import time

import os

headers = {

'User-Agent':'only老K'# 这里可以随意输入,也可以输入网页上面的User-Agent

}

response = requests.get('https://www.vmgirls.com/12945.html')

# print(response.request.headers)

# print(response.text)

html = response.text

#解析网页

dir_name = re.findall('<h1 class="post-title h3">(.*?)</h1>',html)[-1] #根据网页标题去做我们的文件夹名字

if not os.path.exists(dir_name):

os.mkdir(dir_name)

urls = re.findall('<a href="(.*?)" alt=".*?" title=".*?">',html) # (.*?) 意思就是匹配这个数据

# print(urls)

# 保存图片

for url in urls:

time.sleep(1)

file_name = url.split('/')[-1]

response = requests.get(url)

with open(dir_name +'/' + file_name,'wb') as f: #'wb':二进制 file_name:图片名称

f.write(response.content)

网络觉得你的爬取速度…

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>