[python应用]python简单图片抓取

前言

emmmm

python简单图片抓取

 1 import requests
 2 import threading
 3 import queue
 4 from subprocess import Popen,PIPE
 5 from bs4 import BeautifulSoup as bs
 6 import urllib
 7 import base64
 8
 9
10 queue=queue.Queue()
11
12 class Jiandan(threading.Thread):
13         def __init__(self,queue):
14             threading.Thread.__init__(self)
15             self._queue=queue
16
17         def run(self):
18             while not self._queue.empty():
19                 url=self._queue.get_nowait()
20                 self.spider(url)
21
22         def spider(self,url):
23             headers={}
24             r=requests.get(url)
25             #选择lxml解析器
26             soup=bs(r.content,‘lxml‘)
27             #查找html标签name为img的元素获取到它
28             imgs=soup.find_all(name=‘img‘,attrs={})
29
30             for img in imgs:
31                 if ‘onload‘ in str(img):
32                     img=img[‘org_src‘]
33                 else:
34                     img=img[‘src‘]
35
36                 name=img.split(‘/‘)[-1]
37
38                 #获取的url没http:所以要加上http协议才能访问下载
39                 img="http:"+img
40
41                 #存储图片的路径地址
42                 lu="C:\\Users\\xhds1\\Desktop\\img\\"+name
43                 print(lu)
44                 urlretrieve(img,lu)  #urlretrieve模块下载图片
45                # print(name)
46
47 def main():
48     sss=""
49     for i in range(137,139):
50         riqi="20200121-%s"%(i)
51
52         #使用了base64模块进行URL编码  这里遇到的问题是编码后就成为了字节流类型
53         #查了资料才得知必须转换成字符串类型才行 纠结了好久
54         strbs=base64.b64encode(riqi.encode(encoding="utf-8")).decode("utf-8")
55
56         queue.put("https://jandan.net/pic/"+strbs+"#comments")
57
58     threads=[]
59     thread_count=5
60
61     for i in range(thread_count):
62         threads.append(Jiandan(queue))
63     for t in threads:
64         t.start()
65     for t in threads:
66         t.join()
67
68 if __name__==‘__main__‘:
69     main()

参考学习:

浅析Python3中的bytes和str类型:https://www.cnblogs.com/chownjy/p/6625299.html

https://www.cnblogs.com/OliverQin/p/8641700.html

原文地址:https://www.cnblogs.com/xhds/p/12227818.html

时间: 2024-10-01 07:54:23

[python应用]python简单图片抓取的相关文章

arpspoof+driftnet+ ARP欺骗简单图片抓取

arpspoof+driftnet+ ARP欺骗简单图片抓取 driftnet是一款简单而使用的图片捕获工具,可以很方便的在网络数据包中抓取图片.该工具可以实时和离线捕获指定数据包中是图片 环境 受害ip:192.168.228.130 攻击ip:192.168.228.129 网关:192.168.228.2 条件 1,开启或关闭IP转发 2,向被攻击机器发送arp欺骗数据包,冒充网关 3,向网关发送arp数据欺骗网关,冒充被攻击机器 4,运行driftnet截取图片 开启IP转发功能 cat

python爬虫beta版之抓取知乎单页面回答(low 逼版)

闲着无聊,逛知乎.发现想找点有意思的回答也不容易,就想说要不写个爬虫帮我把点赞数最多的给我搞下来方便阅读,也许还能做做数据分析(意淫中--) 鉴于之前用python写爬虫,帮运营人员抓取过京东的商品品牌以及分类,这次也是用python来搞简单的抓取单页面版,后期再补充哈. #-*- coding: UTF-8 -*- import requests import sys from bs4 import BeautifulSoup #------知乎答案收集---------- #获取网页body

Python爬虫实战四之抓取淘宝MM照片

福利啊福利,本次为大家带来的项目是抓取淘宝MM照片并保存起来,大家有没有很激动呢? 最新动态 更新时间:2015/8/2 最近好多读者反映代码已经不能用了,原因是淘宝索引页的MM链接改了.网站改版了,URL的索引已经和之前的不一样了,之前可以直接跳转到每个MM的个性域名,现在中间加了一个跳转页,本以为可以通过这个页面然后跳转到原来的个性域名,而经过一番折腾发现,这个跳转页中的内容是JS动态生成的,所以不能用Urllib库来直接抓取了,本篇就只提供学习思路,代码不能继续用了. 之后博主会利用其它方

利用python脚本(xpath)抓取数据

有人会问re和xpath是什么关系?如果你了解js与jquery,那么这个就很好理解了. 上一篇:利用python脚本(re)抓取美空mm图片 # -*- coding:utf-8 -*- from lxml import etree html = """ <!DOCTYPE html> <html> <head lang="en"> <title>我的文档</title> <meta ht

简单的图片抓取demo

原文:简单的图片抓取demo 源代码下载地址:http://www.zuidaima.com/share/1568741405854720.htm 昨天看到同学在一张张右键图片,感觉好麻烦,今天上午就查了一下资料,弄了个图片抓取器. 用到jsoup和 io包,我放在压缩文件里了. 新手刚刚弄,可能会有考虑不好的地方,欢迎大家多多指教. 主要代码: 01 //遍历保存 02 Iterator<String> i = imgSrcSet.iterator(); 03             whi

爬虫技术(四)-- 简单爬虫抓取示例(附c#代码)

这是我的第一个爬虫代码...算是一份测试版的代码.大牛大神别喷... 通过给定一个初始的地址startPiont然后对网页进行捕捉,然后通过正则表达式对网址进行匹配. List<string> todo :进行抓取的网址的集合 List<string> visited :已经访问过的网址的集合 下面实现的是,给定一个初始地址,然后进行爬虫,输出正在访问的网址和已经访问的网页的个数. 需要注意的是,下面代码实现的链接匹配页面的内容如图一.图二所示: 图一: 图二: 简单代码示范如下:

简单爬虫-抓取博客园文章列表

原文:简单爬虫-抓取博客园文章列表 如果使用对方网站数据,而又没有响应的接口,或者使用接口不够灵活的情况下,使用爬虫在合适不过了.爬虫有几种,对方网站展示形式有几种都是用分析,每个网站展示有相似的地方,有不同的地方. 大部分使用httpRequst就能完成,不管是否添加了口令.随即码.请求参数.提交方式get或者post.地址来源.多次响应等等.但是有些网站使用ajax如果是返回json或固定格式的也好处理,如果是很复杂的,可以使用webbrower控件进行抓取,最后正则解析,获取所需要的数据即

利用python脚本(re)抓取美空mm图片

很久没有写博客了,这段时间一直在搞风控的东西,过段时间我把风控的内容整理整理发出来大家一起研究研究. 这两天抽空写了两个python爬虫脚本,一个使用re,一个使用xpath. 直接上代码——基于re: spider.py # -*- coding:utf-8 -*- import urllib.request import re import tool import os import http.cookiejar # 抓取MOKO_MM class Spider: # 页面初始化 def _

Python Show-Me-the-Code 第 0013 题 抓取妹子图片 使用scrapy

第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-) 参考代码 完整代码 思路: 其实这个可以不用scrapy,就用正则匹配+request应该就可以完成任务了.我想练习下scrapy,于是就用scrapy做这个了. 这个只要求爬一个网页上的图片,所以也不用写什么follow规则,算是比较简单的.通过分析链接里的妹子图片的标签,发现百度贴吧里发的图片是带BDE_Image这个类的,所以就好办了,直接用xpath把所有img标签中带BDE_Image类的全