鱼C论坛

 找回密码
 立即注册
查看: 1605|回复: 1

想要爬取任意页的图片代码该怎么加

[复制链接]
发表于 2022-4-8 10:45:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import requests
import parsel
import os

filename = '壁纸\\'

if not os.path.exists(filename):
    os.mkdir(filename)


url = 'http://www.netbian.com/index.htm'
headers = {
    'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
response.encoding = response.apparent_encoding
#print(response.text)
selector = parsel.Selector(response.text)
href = selector.css('.list li a::attr(href)').getall()
lis = selector.css('.list li')
#print(href)
for li in lis:
    title = li.css('b::text').get()
    if title:
        li_url = 'http://www.netbian.com/' + li.css('a::attr(href)').get()
        response_2 = requests.get(url=li_url, headers=headers)
        selector_2 = parsel.Selector(response_2.text)
        img_url = selector_2.css('.pic img::attr(src)').get()
        img_content = requests.get(url=img_url).content
        with open(filename + title +'.jpg', mode='wb') as f:
            f.write(img_content)
            print(title, img_url)
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-4-8 17:18:37 | 显示全部楼层
  1. import requests
  2. import parsel
  3. import os

  4. filename = '壁纸\\'

  5. if not os.path.exists(filename):
  6.     os.mkdir(filename)


  7. def main(page=1):
  8.     if page == 1:
  9.         url = 'http://www.netbian.com/index.htm'
  10.     else:
  11.         url = f'http://www.netbian.com/index_{page}.htm'
  12.     headers = {
  13.         'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36'
  14.     }
  15.     response = requests.get(url=url, headers=headers)
  16.     response.encoding = response.apparent_encoding
  17.     # print(response.text)
  18.     selector = parsel.Selector(response.text)
  19.     href = selector.css('.list li a::attr(href)').getall()
  20.     lis = selector.css('.list li')
  21.     #print(href)
  22.     for li in lis:
  23.         title = li.css('b::text').get()
  24.         if title:
  25.             li_url = 'http://www.netbian.com/' + li.css('a::attr(href)').get()
  26.             response_2 = requests.get(url=li_url, headers=headers)
  27.             selector_2 = parsel.Selector(response_2.text)
  28.             img_url = selector_2.css('.pic img::attr(src)').get()
  29.             img_content = requests.get(url=img_url).content
  30.             with open(filename + title +'.jpg', mode='wb') as f:
  31.                 f.write(img_content)
  32.                 print(title, img_url)

  33. if __name__ == '__main__':
  34.     main(2)                     # 爬取第二页
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-29 08:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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