1. 程式人生 > 其它 >Python爬蟲,爬取網站圖片,詳細解釋(看完就會)

Python爬蟲,爬取網站圖片,詳細解釋(看完就會)

Xpath

解析圖片專案

# 指定url
url = 'http://pic.netbian.com/4kyingshi/'
# UA偽裝
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                  'Chrome/91.0.4472.101 Safari/537.36 Edg/91.0.864.48 '
}
# 傳送請求
response = requests.get(url=url, headers=headers)
# 獲取頁面文字資訊 page_text = response.text # 獲取編碼格式 print(response.encoding) # 解析返回來的內容 tree = etree.HTML(page_text) # 編寫匹配規則 # Xpath規則:獲取所有節點下的div class屬性值為"slist" 該div下的/ul便籤下的/ul標籤 li_list = tree.xpath('//div[@class="slist"]/ul/li') print(li_list) # 開始遍歷獲取src屬性值 for li in li_list: # 拼接圖片url # Xpath規則:獲取當前目錄下的/a標籤下的img標籤選擇src屬性
img_url = 'http://pic.netbian.com'+li.xpath('./a/img/@src')[0] # Xpath規則:原理同上 # 生成檔名 img_name = li.xpath('./a/img/@alt')[0] # 編碼 img_name_list = img_name.encode('iso-8859-1').decode('gbk') print(img_url, img_name_list) # 傳送二次請求,請求圖片的src值 response_content = requests.get(url= img_url, headers=headers).content
# 持久化處理 with open(img_name_list+'.jpg','wb') as fp: fp.write(response_content)