吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8440|回复: 45
收起左侧

[Python 转载] 爬虫爬取小姐姐穿比基尼照片

  [复制链接]
dukeimp 发表于 2021-7-14 16:55
本帖最后由 dukeimp 于 2021-7-14 17:09 编辑

前言
大致熟悉了python的基础语法以后,开始学习爬虫基础。

一、爬取前的准备工作
python3.7环境(只要是python3版本都可以);
依赖包 : time requests re (缺少包的话,直接命令行中 pip install + 包名 下载);
python编辑器,本人使用pycharm(能编辑运行python程序即可)。
二、分析爬取网站并爬取

  1. 观察所要爬取网站信息
    (1) 打开小姐姐网站,点击鼠标右键,检查,此时进入开发者模式,点击开发者窗口中的 network ,重新刷新界面,然后在下面的 Name 一栏中点击我们的第一个网址,在右边的 Header 中可以看到我们访问的信息。我们找到 Request Headers 中的 cookie 和User-Agent,我们保存下来。

我们观察可以发现图片元素包含在一个 a 标签中,而我们想要的图片路径就是a 标签中的 href 属性。

我们把鼠标移动到href属性中的路径上停留几秒钟可以发现图片的完整路径(是不是很神奇呀!)。我们保存一下这个完整路径。

经过以上对图片网站的分析,接下来我们就可以顺利的编代码啦。

2. 爬取完整代码
代码如下(示例):

[Python] 纯文本查看 复制代码
import time
import requests
import re

[mw_shl_code=python,true]def get_Data(base_url): Rheaders = {

这里需要爬取网站首页的cookie。(没有cookie图片可能会出错,用自己的cookie)

    "cookie": "__cfduid=d5411884fe8db207f3f03481febfe233e1598005261; __gads=ID=7a29c02809efefed:T=1598005261:S=ALNI_MZ6fuEEp6EyyCZwFhe5REJdwC5IsQ; _ga=GA1.2.1470230754.1598005306; _gid=GA1.2.1918223717.1598005307; Hm_lvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1597913712,1598001373,1598005230,1598007422; _GPSLSC=; xcat_sign_cookie=2097c21e431a2a007b125e4fc599a50c; Hm_lpvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1598008115",
    # "cookie":"__cfduid=d5411884fe8db207f3f03481febfe233e1598005261; Hm_lvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1597396642,1597913712,1598001373,1598005230; __gads=ID=7a29c02809efefed:T=1598005261:S=ALNI_MZ6fuEEp6EyyCZwFhe5REJdwC5IsQ; _GPSLSC=; xcat_sign_cookie=2097c21e431a2a007b125e4fc599a50c; _ga=GA1.2.1470230754.1598005306; _gid=GA1.2.1918223717.1598005307; Hm_lpvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1598006751; _gat_gtag_UA_127463675_2=1",
    # 设置代{过}{滤}理,伪装成浏览器。
    "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36"
}

[Python] 纯文本查看 复制代码
response = requests.get(base_url,headers = Rheaders)
response.encoding = 'utf-8'
html = response.text

print(html)

image_urls = re.findall('<a href="(.*?)" alt=".*?" title=".*?">', html)
#print(image_urls)
return image_urls

print(get_Data('https://www.vmgirls.com/12985.html'))

print(get_Data('https://www.vmgirls.com/12985.html'))

[Python] 纯文本查看 复制代码
def save_Data(image_urls):
Rheaders = {
"cookie":"cfduid=d5411884fe8db207f3f03481febfe233e1598005261; gads=ID=7a29c02809efefed:T=1598005261:S=ALNI_MZ6fuEEp6EyyCZwFhe5REJdwC5IsQ; _ga=GA1.2.1470230754.1598005306; _gid=GA1.2.1918223717.1598005307; Hm_lvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1597913712,1598001373,1598005230,1598007422; _GPSLSC=; xcat_sign_cookie=2097c21e431a2a007b125e4fc599a50c; Hm_lpvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1598008115",

"cookie":"cfduid=d5411884fe8db207f3f03481febfe233e1598005261; Hm_lvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1597396642,1597913712,1598001373,1598005230; gads=ID=7a29c02809efefed:T=1598005261:S=ALNI_MZ6fuEEp6EyyCZwFhe5REJdwC5IsQ; _GPSLSC=; xcat_sign_cookie=2097c21e431a2a007b125e4fc599a50c; _ga=GA1.2.1470230754.1598005306; _gid=GA1.2.1918223717.1598005307; Hm_lpvt_a5eba7a40c339f057e1c5b5ac4ab4cc9=1598006751; _gat_gtag_UA_127463675_2=1",

    "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36"
}
path = 'https://www.vmgirls.com/'
##爬取图片开始

[Python] 纯文本查看 复制代码
 print("Begin >> >> >>")
for url in image_urls:
time.sleep(3)
image_name = url.split('/')[-1]

print(image_name)

    response = requests.get(path + url,headers=Rheaders)
    # 这里的images3需要亲们手动建立在同级目录下
    with open('./images3/' + image_name,'wb') as f:
        f.write(response.content)
print("<< << << Finish")

"if name == 'main':"

"if name == 'main':"

网址为你想要爬取的页面(注意:必须为五个数的页面,比如:14012.html)

save_Data(get_Data('https://www.vmgirls.com/14012.html'))
#get_Data('https://www.vmgirls.com/12985.html')

[/mw_shl_code]

这是我爬取下来的小姐姐图片,大家若是有什么疑问,欢迎评论,随时回复,也可以一起交流学习,共同进步。

[b]
总结

  1. 在爬取前,一定要分析网页结构;
  2. 在代码上要注意设置user-agent 和 cookie,可以防止爬取出问题哦;
  3. 代码实现比较粗糙,以后会多多改进,使代码整洁,减少代码冗余,使代码高效执行。

    源代码在最后面

pythonCod.zip

1.32 KB, 下载次数: 152, 下载积分: 吾爱币 -1 CB

源码在这里

免费评分

参与人数 5吾爱币 +4 热心值 +4 收起 理由
Reer + 1 + 1 热心回复!
Jeclk + 1 用心讨论,共获提升!好东西
hyx123 + 1 我很赞同!
dzqaww + 1 + 1 热心回复!
金葫芦命理 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Disky 发表于 2021-7-14 23:39
RRR 发表于 2021-7-14 21:59
感谢楼主分享,为什么爬取下图片无法正常查看?就是说图片爬下来打不开。

[Python] 纯文本查看 复制代码
    #修改path
    path = 'https:'
    #爬取图片开始
    print("Begin >> >> >>")
kafei000 发表于 2021-7-14 17:05
LCG陈鸿宇 发表于 2021-7-14 17:03
 楼主| dukeimp 发表于 2021-7-14 17:08
kafei000 发表于 2021-7-14 17:05
你这排版都不排的吗

吾爱破解的编辑器,对Python里面的注释 #号有冲突,自动识别为一级标题,我也是很无奈啊
sigou1234 发表于 2021-7-14 17:09
没有图片,没有真相!
 楼主| dukeimp 发表于 2021-7-14 17:10
sigou1234 发表于 2021-7-14 17:09
没有图片,没有真相!

图片搞上去,怕被限流
love73151 发表于 2021-7-14 17:17
没有图片,没有真相!
kafei000 发表于 2021-7-14 17:36
dukeimp 发表于 2021-7-14 17:08
吾爱破解的编辑器,对Python里面的注释 #号有冲突,自动识别为一级标题,我也是很无奈啊

编辑器可以插入代码,<>这个符号。代码类型选择python 就可以了
kafei000 发表于 2021-7-14 17:37
dukeimp 发表于 2021-7-14 17:08
吾爱破解的编辑器,对Python里面的注释 #号有冲突,自动识别为一级标题,我也是很无奈啊

markdown格式的也可以兼容的
wangzhaochen 发表于 2021-7-14 17:41
看一下!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 05:36

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表