您好,登錄后才能下訂單哦!
Python如何爬取愛徒網素材下載鏈接,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
平時都是直接爬取圖片,但是有些時候只想要個別的圖該怎么辦呢?
爬取愛徒網素材下載地址
通過點擊素材進入素材詳情頁,可以看到本地下載地址,多復制幾個素材的下載地址鏈接:
http://www.aiimg.com/sucai.php?open=1&aid=126632&uhash=70a6d2ffc358f79d9cf71392 http://www.aiimg.com/sucai.php?open=1&aid=126630&uhash=99b07c347dc24533ccc1c144 http://www.aiimg.com/sucai.php?open=1&aid=126634&uhash=d7e8f7f02f57568e280190b4
每個鏈接的aid不一樣,這個應該就是素材的每個ID,后面的uhash又是什么呢
原本想著網頁數據里面是否有接口數據可以直接找到這個參數,在開發者工具里面搜索并沒有這個參數,看一下網頁源代碼里面是否有這個下載鏈接~
有這個鏈接的話,咱們獲取鏈接之后就可以直接下載~
可以發現,咱們需要的數據都在網頁的標簽里面,請求網頁獲取返回數據
import requests url = 'http://www.aiimg.com/list.php?tid=1&ext=0&free=2&TotalResult=5853&PageNo=1' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' } response = requests.get(url=url, headers=headers) print(response.text)
解析爬取數據
import parsel selector = parsel.Selector(response.text) lis = selector.css('.imglist_d ul li a::attr(href)').getall() for li in lis: num_id = li.replace('.html', '').split('/')[-1] new_url = 'http://www.aiimg.com/sucai.php?aid={}'.format(num_id) response_2 = requests.get(url=new_url, headers=headers) selector_2 = parsel.Selector(response_2.text) data_url = selector_2.css('.downlist a.down1::attr(href)').get() title = selector_2.css('.toart a::text').get() download_url = 'http://www.aiimg.com' + data_url
看完上述內容,你們掌握Python如何爬取愛徒網素材下載鏈接的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。