python 爬网页图片,python爬虫 爬网页所有图片
目标网址:全景网络风景壁纸,有以下页面
1.网页分析还是和之前抓取的文字信息一致的。需要分析网页信息,获取图片数据的地址,然后下载图片。
经过对网页的分析,发现所需图片的网址在【a.item.lazy img】中
2.封装第一个函数。要获取图片的url,先导入相关的库,然后写函数。这里第一个函数的内容和之前差不多。
导入请求
从bs4导入BeautifulSoup
从uuid导入uuid1
导入操作系统
def get_image():
URL= https://www . quanjing . com/creative/topic/1
html=requests.get(url)
#打印(html)
soup=BeautifulSoup(html.text, lxml )
#打印(汤)
images=soup . select( a . item . lazy img )
#打印(图像)
对于图像中的img[:10]:
打印(img[src])
IMG _ URL=IMG[ src ]输出结果是:(这里只显示了部分内容,每个URL对应一张图片。您可以通过在浏览器上输入URL来下载)
http://mpic . Tian kong . com/34f/7d 3/34 f 7d 3 b 8 ff 1 da 0 cc 98 CFB f1 e 2969 ba 25/640 . jpg @!240小时
http://mpic . Tian kong . com/0 C3/116/0c 3116 e 0 c 6 BDA 3d 67 a 18 b 34 f 8659 bd5d/640 . jpg @!240小时
http://mpic . Tian kong . com/2bf/756/2bf 756 b 76 df 89186 a 44 f 0709 dfe 8d 8 BD/640 . jpg @!240小时
http://mpic . Tian kong . com/fff/a07/fffa 07d 7409 dfcad 0 ca 9 f 996 f 42 a 9112/640 . jpg @!240小时
http://mpic . Tian kong . com/e91/d37/e91d 3759 a 45d 9 ebb 70 f 745 FB 489 F7 AE 2/640 . jpg @!240小时
http://mpic . Tian kong . com/deb/c7c/debc 7 CDC 05 FD 3a 72 b 61779 a 219 e 66568/640 . jpg @!240小时
http://mpic . Tian kong . com/ae9/6d 3/ae96d 301 c 743 b 06 a 291 bb 5 efbc 629 cf 6/640 . jpg @!240小时
http://mpic . Tian kong . com/207/f03/207 f 03 e0d 631 bb 7094 ccacf 63528715/640 . jpg @!240小时
http://mpic . Tian kong . com/28d/939/28d 939 ff 9556 f 07 f 13 c 6 e 33 c 0 c 52d 4d 5/640 . jpg @!240小时
http://mpic . Tian kong . com/62f/901/62f 9011 a 11 df 31 a9 be 68729 a 67 be 020 e/640 . jpg @!240h3。封装第二个功能,先下载图片,图片必须有存储地址,所以需要先创建一个文件夹来存储要下载的文件,也使用了创建文件夹的常用搭配;
其次是写图片内容,都是二进制内容(图片、音频、视频),而。采用内容法获取相应的信息。
定义下载(url):
如果不是os.path.exists(。/图片’):
os.makedirs(图片)
带开(。/picture/{}。jpg。将(uuid1()), wb )格式化为f:
F.write (requests.get (URL))。content)最后在包的第一个函数中调用这个函数。
下载(img _ URL)输出结果是:(uuid模块的作用是为照片命名创建不同的随机数)
4.扩展如果不习惯用这么长的随机值给图片的文件命名,可以试试之前用的datetime模块,获取当前日期,然后通过计数给文件夹和图片文件下命令。
主要是修改函数2,最后所有代码如下
导入请求
从bs4导入BeautifulSoup
从日期时间导入日期
导入操作系统
def get_image():
URL= https://www . quanjing . com/creative/topic/1
html=requests.get(url)
#打印(html)
soup=BeautifulSoup(html.text, lxml )
#打印(汤)
images=soup . select( a . item . lazy img )
#打印(图像)
计数=1
对于图像中的img[:50]:
#print(img[src])
img_url=img[src]
下载(img_url,计数)
Print(f 正在下载第{count}张图片.)
计数=1
定义下载(url,计数):
today=str(date.today())
如果不是os.path.exists(f 。/{today}_pic ):
os.makedirs(f{today}_pic )
带开(。/{}_pic/{}。jpg。格式(今天,计数),‘WB’)为f:
f.write(requests.get(url))。内容)
get _ image()输出结果是:(通过学习旧东西来学习新东西)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。