Python爬蟲,爬取網站圖片,詳細解釋(看完就會)
阿新 • • 發佈:2021-06-22
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)