当前位置:   article > 正文

python爬虫之爬取4k壁纸·_python怎么处理4k图片

python怎么处理4k图片

这段代码是一个简单的网络爬虫,用于从网站 pic.netbian.com 上下载图片。下面是代码的逐行解释:

1-5. 导入所需的库:requests 用于发起网络请求,lxml.etree 用于解析HTML,random 用于生成随机数,time 用于暂停程序,os 用于与操作系统交互。

 

8-9. 获取用户输入:搜索ID和需要下载的页数。ID和页数在网址框获取

10-16. 构建请求的URL,设置请求头,并使用 requests.get() 发起网络请求获取网页内容。

 

  1. 使用 lxml.etree.HTML() 解析获取到的HTML内容。

  2. 使用XPath提取图片链接。这里假设图片链接在HTML中的特定位置。

23-24. 检查是否已存在以搜索ID命名的文件夹,如果不存在则创建一个。

 

19-24. 遍历提取到的图片链接,发起请求获取图片内容,并将其保存到之前创建的文件夹中。图片的名称是链接中的最后一部分。在保存每张图片后,程序会随机暂停1到3秒钟。

27-32.打印保存图片的名称。

以下为完整代码:

  1. import requests
  2. from lxml import etree
  3. import random
  4. import time
  5. import os
  6. if __name__ == '__main__':
  7. id = input('请输入搜索ID: ')
  8. i=input('亲,需要多少页图片:')
  9. for page in range(int(i)):
  10. url = 'https://pic.netbian.com/e/search/result/index.php?page='+str(page)+'&searchid=' + id
  11. headers = {
  12. 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0',
  13. 'reffer':'https://www.douban.com/'
  14. }
  15. response = requests.get(url=url, headers=headers)
  16. html = etree.HTML(response.text)
  17. # 提取图片链接
  18. img_urls = html.xpath('//div[@class="slist"]/ul/li/a/img/@src')
  19. # 创建文件夹
  20. if not os.path.exists(id):
  21. os.makedirs(id)
  22. # 下载图片
  23. for img_url in img_urls:
  24. img_response = requests.get(url='https://pic.netbian.com/' + img_url)
  25. img_name = img_url.split('/')[-1]
  26. with open(os.path.join(id, img_name), 'wb') as f:
  27. f.write(img_response.content)
  28. print(f"已保存图片:{img_name}")
  29. time.sleep(random.randint(1, 3))

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/973791
推荐阅读
相关标签
  

闽ICP备14008679号