爬取百度贴吧图片
本次文章內容是爬取貼吧圖片,希望對大家有所幫助
使用環境:我用的是python2.7.9
在Python 3以后的版本中,urllib2這個模塊已經不單獨存在(也就是說當你import urllib2時,系統提示你沒這個模塊),urllib2被合并到了urllib中。
- urllib2.urlopen()變成了urllib.request.urlopen()
- urllib2.Request()變成了urllib.request.Request()
如果有的用的是python3以后的版本,記得改一下哦
一、 獲取要爬取的貼吧的網址
打開瀏覽器,找到我們想爬取的貼吧,獲取其網址
二、 獲取頁面源代碼
利用下面函數來獲取源代碼
def gethtml(url):page = urllib.urlopen(url)html = page.read()return html三、匹配的圖片地址
首先,我們打開第一步的網址,右擊審查元素,在審查元素中找到圖片的地址,觀察其地址的格式
這里,我匹配的是bpic等于的那個網址,從這我們可以看到圖片的地址是以.jpg結尾,利用正則進行匹配
reg = r'bpic="(.*?\.jpg).*?pic'這里括號所括住的部分,正是我們所需要的地址
- (.*?)是進行最小匹配,是非貪婪模式
- \ 是轉義字符
四、保存圖片至本地
存入本地
urllib.urlretrieve(imgurl, '%s.jpg' % x)或者可以存至自己新建的文件夾
f = open('tupian/'+str(x)+'.jpg', 'wb') f.write((urllib2.urlopen(imgurl)).read()) f.close()五、完整代碼呈現
代碼中有中文時,完整添加的是 # - * - coding:utf-8 - * -
#coding:utf8只是簡寫
此程序中,共用到三個庫:
- import re
- import urllib
- import urllib2
結果呈現
以上就是爬取貼吧圖片的全部過程
總結
- 上一篇: 无法找到模块“vue-contextme
- 下一篇: Camera代码相关