前言
本文的文字及圖片來源于網路,僅供學習、交流使用,不具有任何商業用途,如有問題請及時聯系我們以作處理,
基本環境配置
- python 3.6
- pycharm
- requests
相關模塊pip安裝即可
確定目標網頁






分析網頁
1、查看圖片地址


代碼實作
import requests
import parsel
url = 'https://bcy.net/coser/toppost100'
response = requests.get(url=url, headers=headers)
selector = parsel.Selector(response.text)
urls = selector.css('.rank-index-box .rank-cos-top img::attr(src)').getall()
titles = selector.css('.rank-index-box .rank-cos-avatar-box p::text').getall()
lis = zip(urls, titles)
for i in lis:
img_url = i[0]
title = i[1]
response_2 = requests.get(url=img_url, headers=headers)
path = 'D:\\python\\demo\\cos小姐姐\\img\\' + title + '.jpg'
with open(path, mode='wb') as f:
f.write(response_2.content)
print(img_url)

圖片資料是爬取下來了,但是保存資料后發現,僅僅只有20張圖片,這根本不是我想要的~

所以要重新分析網頁了~看一下是否有介面資料

我清空所有加載出來的資料,下拉的時候,然后出現一個神秘地址,點擊去一看,果然是介面資料,為了保證準確性,咱們可以多往下翻翻
果然~~~

通過鏈接對比,發現介面資料的引數P是改變的,等同于頁數編碼,1就是對應的前20張圖片資料


代碼實作
import requests
for page in range(1, 6):
url = 'https://bcy.net/apiv3/rank/list/itemInfo'
params = {
'p': '{}'.format(page),
'ttype': 'cos',
'sub_type': 'week',
'date': '20200922',
'_signature': 'a2ovWQAAAAAem6QHkeiiVmtqL0AADQG',
}
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'
}
'''
Json 介面資料
'''
response = requests.get(url=url, params=params, headers=headers)
html_data = https://www.cnblogs.com/liuyueqingfeng/archive/2020/09/22/response.json()
info_list = html_data['data']['top_list_item_info']
for i in info_list:
img_url = i['item_detail']['cover']
title = img_url.split('/')[-1].split('~')[0]
response_2 = requests.get(url=img_url, headers=headers)
path = 'D:\\python\\demo\\cos小姐姐\\img\\' + title + '.jpg'
with open(path, mode='wb') as f:
f.write(response_2.content)
print(img_url)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/106319.html
標籤:其他
