请提前搭好梯子,如果没有梯子的话直接403。

1.所用到的包

requests: 和服务器建立连接,请求和接收数据(当然也可以用其他的包,socket之类的,不过requests是最简单好用的)

BeautifulSoup:解析从服务器接收到的数据

urllib:  将网页图片下载到本地

import requests
from bs4 import BeautifulSoup
import urllib

2.获取指定页面的html内容并解析

我这里选取"blowjob"作为关键字

key_word='blowjob'
url = 'https://www.pornhub.com/video/search?search='+key_word
html=requests.get(url) soup=BeautifulSoup(html.content,'html.parser')

3.从html中筛到全部image并进行遍历

使用find_all函数,将所有img区块中包含属性'width':"150"的存储到jpg_data列表中,并对jpg_data列表进行遍历

jpg_data=soup.find_all('img',attrs={'width':"" })
for cur in jpg_data:
pic_src=cur['src']

4.进一步筛选,并找到图片地址进行下载操作

cur['src']为当前图片地址,cur['alt']为当前图片标题,urllib.requests.urlretrieve操作将图片保存到当地,默认地址为本py文件所在目录,如有需要也可自定义保存目录。

for cur in jpg_data:
pic_src=cur['src']
if(".jpg" in pic_src):
filename=cur['alt']+'.jpg'
with open(filename,'wb') as f:
f.write(bytes(pic_src,encoding='utf-8'))
print(filename)
f.close()

完整代码:

import requests
from bs4 import BeautifulSoup
headers = {'User-Agent': 'User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'} url = 'https://www.pornhub.com/video/search?search=blowjob'
html=requests.get(url,headers=headers) soup=BeautifulSoup(html.content,'html.parser')
jpg_data=soup.find_all('img',attrs={'width':"" })
for cur in jpg_data:
pic_src=cur['src']
if(".jpg" in pic_src):
filename=cur['alt']+'.jpg'
with open(filename,'wb') as f:
f.write(bytes(pic_src,encoding='utf-8'))
print(filename)
f.close()

以上所作示例仅爬取了keyword关键词搜索下第一页的图片内容,如需要爬取多页,

可在url后加'&page=xx'并进行遍历

for i in range(0,10):
  url = 'https://www.pornhub.com/video/search?search=blowjob'+'&page='+str(i)

程序运行结果:

python简单爬虫(爬取pornhub特定关键词的items图片集)的更多相关文章

  1. python简单爬虫爬取百度百科python词条网页

    目标分析:目标:百度百科python词条相关词条网页 - 标题和简介 入口页:https://baike.baidu.com/item/Python/407313 URL格式: - 词条页面URL:/ ...

  2. 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)

    前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...

  3. 利用Python网络爬虫爬取学校官网十条标题

    利用Python网络爬虫爬取学校官网十条标题 案例代码: # __author : "J" # date : 2018-03-06 # 导入需要用到的库文件 import urll ...

  4. 【Python数据分析】简单爬虫 爬取知乎神回复

    看知乎的时候发现了一个 “如何正确地吐槽” 收藏夹,里面的一些神回复实在很搞笑,但是一页一页地看又有点麻烦,而且每次都要打开网页,于是想如果全部爬下来到一个文件里面,是不是看起来很爽,并且随时可以看到 ...

  5. python制作爬虫爬取京东商品评论教程

    作者:蓝鲸 类型:转载 本文是继前2篇Python爬虫系列文章的后续篇,给大家介绍的是如何使用Python爬取京东商品评论信息的方法,并根据数据绘制成各种统计图表,非常的细致,有需要的小伙伴可以参考下 ...

  6. Python多线程爬虫爬取电影天堂资源

    最近花些时间学习了一下Python,并写了一个多线程的爬虫程序来获取电影天堂上资源的迅雷下载地址,代码已经上传到GitHub上了,需要的同学可以自行下载.刚开始学习python希望可以获得宝贵的意见. ...

  7. Python简易爬虫爬取百度贴吧图片

    通过python 来实现这样一个简单的爬虫功能,把我们想要的图片爬取到本地.(Python版本为3.6.0) 一.获取整个页面数据 def getHtml(url): page=urllib.requ ...

  8. 【Python】Python简易爬虫爬取百度贴吧图片

    通过python 来实现这样一个简单的爬虫功能,把我们想要的图片爬取到本地.(Python版本为3.6.0) 一.获取整个页面数据 def getHtml(url): page=urllib.requ ...

  9. 04 Python网络爬虫 <<爬取get/post请求的页面数据>>之requests模块

    一. urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib ...

随机推荐

  1. javaScript 基础知识汇总(六)

    1.基本类型与对象的区别 基本类型:是原始类型的中的一种值. 在JavaScript中有6中基本类型:string number  boolean  symbol  null  undefined 对 ...

  2. 手把手教你用深度学习做物体检测(五):YOLOv1介绍

    "之前写物体检测系列文章的时候说过,关于YOLO算法,会在后续的文章中介绍,然而,由于YOLO历经3个版本,其论文也有3篇,想全面的讲述清楚还是太难了,本周终于能够抽出时间写一些YOLO算法 ...

  3. CodeForces - 938D-Buy a Ticket+最短路

    Buy a Ticket 题意:有n个点和m条路(都收费),n个点在开演唱会,门票不同,对于生活在n个点的小伙伴,要求计算出每个小伙伴为了看一场演唱会要花费的最小价格: 思路: 这道题我一开始觉得要对 ...

  4. 模板汇总——LCT

    link-cut tree #define lch(x) tr[x].son[0] #define rch(x) tr[x].son[1] ; struct Node{ int rev, rt; ], ...

  5. 牛客小白月赛6 F 发电 树状数组单点更新 求区间乘积 模板

    链接:https://www.nowcoder.com/acm/contest/136/F来源:牛客网  HA实验是一个生产.提炼“神力水晶”的秘密军事基地,神力水晶可以让机器的工作效率成倍提升.   ...

  6. java1.8新特性(一)接口的默认方法

    一 简介 我们通常所说的接口的作用是用于定义一套标准.约束.规范等,接口中的方法只声明方法的签名,不提供相应的方法体,方法体由对应的实现类去实现. 在JDK1.8中打破了这样的认识,接口中的方法可以有 ...

  7. 二进制协议gob及msgpack介绍

    本文主要介绍二进制协议gob及msgpack的基本使用. 最近在写一个gin框架的session服务时遇到了一个问题,Go语言中的json包在序列化空接口存放的数字类型(整型.浮点型等)都序列化成fl ...

  8. tomcat下载镜像地址

    镜像地址:http://mirrors.cnnic.cn/apache/tomcat/ typora编写makedown文件 羚羊云api开发:http://doc.topvdn.com/api/in ...

  9. PLC与上位机的socket通讯——ABB机器人程序(三)

    源程序:https://github.com/935094505/ABB-socket-communication 程序范例 觉得有帮助,别忘了打赏下

  10. IBM MQ reason code list

    The reason code parameter (Reason) is a qualification to the completion code parameter (CompCode). I ...