Python3 定向爬虫之“抓取糗事百科图片”
生活随笔
收集整理的這篇文章主要介紹了
Python3 定向爬虫之“抓取糗事百科图片”
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#--*--coding:utf-8--*--
#抓取糗事百科圖片,并保存到文件夾中import re
import urllib.request
from urllib.error import URLError,HTTPError
import sysurl = "http://www.qiushibaike.com/imgrank/page/1"
# 給文件加入頭信息,用以模擬瀏覽器訪問
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = {'Connection': 'Keep-Alive','Accept': 'text/html, application/xhtml+xml, */*','Accept-Language': 'en-US,en;q=0.8,zh-Hans-CN;q=0.5,zh-Hans;q=0.3','User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko'
}
j=0
for i in range(1,30+1):try:#實現翻頁翻頁url = re.sub('page/\d+','page/%d'%i,url,re.S)print(url)#發送請求,獲得返回信息req = urllib.request.Request(url,headers=headers)response = urllib.request.urlopen(req,timeout=15)content = response.read().decode('utf-8')#處理獲取的web網頁,并將信息處理了items1 = re.findall('<div class="article block untagged mb15" id=(.*?)<div class="stats"',content,re.S)for i in items1:# 多次使用正則表達式,運用先抓大再抓小原則。成功抓取純凈的圖片地址items2 = re.findall('<div class="thumb">(.*?)</div>',i,re.S)picurl = re.findall('<img src=\"(.*?)\"',items2[0],re.S)print(picurl[0])pic = urllib.request.urlopen(picurl[0])jpgpic = pic.read()# 打開文件,如果是windows pic后用\linux用/fp = open('pic/'+str(j)+'.jpg',"wb")print(j)# 寫入文件fp.write(jpgpic)fp.close()j=j+1except HTTPError as e:print("HTTPError")passexcept URLError as e:print("URLError")passexcept:pass
總結
以上是生活随笔為你收集整理的Python3 定向爬虫之“抓取糗事百科图片”的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: androidstudio 常用快捷键
- 下一篇: Ubuntu 循环显示登录界面