YES.O.NO 发表于 2021-2-26 18:18

【python】爬取高清壁纸

如有违规请删帖
该网站注册用户还有大尺度图片 兄弟上车


import requests,time,random,string
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
urlArr = []
UrlAllArr = []
browser = webdriver.Chrome()
for x in range(1,86):
      browser.get("https://wallhaven.cc/search?q=id%3A537&categories=110&purity=100&ratios=16x9&sorting=favorites&order=desc&page="+str(x))
      time.sleep(1)
      #循环获取每一页的全部图片的页面链接
      UrlAllArr = browser.find_elements_by_xpath("/html/body/main/div/section/ul/li")
      for xx in range(1,len(UrlAllArr)+1):
                urlArr.append(browser.find_element_by_xpath("/html/body/main/div/section/ul/li["+str(xx)+"]/figure/a").get_attribute("href"))
#循环图片url数组并下载
for xxx in urlArr:
      browser.get(xxx)
      try:
                img_url = (browser.find_element_by_xpath("/html/body/main/section/div/img").get_attribute("src"))
                #截取后缀名
                img_houzhui = img_url.find('.',-6)+1
                img_houzhui_str = img_url
                #重新命名
                img_str = ''.join(random.sample(string.ascii_letters + string.digits,20))+"."+img_houzhui_str
                #下载到文件夹
                r = requests.get(img_url)
                #文件夹路径自行修改
                asd = open("C:\\Users\\my\\Desktop\\壁纸\\"+img_str,"wb").write(r.content)
                time.sleep(1)      
      except:
                print("失败")
print("抓取完成")
browser.quit()

sungao 发表于 2021-2-26 18:59


支持楼主,谢谢分享。

l394548380 发表于 2021-2-26 19:17

感谢楼主分享

说得好个 发表于 2021-2-26 19:43

谢谢分享!

wwf31830367 发表于 2021-2-26 19:49

谢谢@Thanks!

15116505132 发表于 2021-2-26 20:42

谢谢大牛

守护呀 发表于 2021-2-26 21:33

6666

辉yu 发表于 2021-2-27 00:12

感谢分享,不错的

xiaomifeng118 发表于 2021-2-27 00:24

谢谢大佬

SYKKING 发表于 2021-2-27 01:36

多谢楼主分享
页: [1] 2
查看完整版本: 【python】爬取高清壁纸