99久久精品国产片-99久久精品国产免费-99久久精品国产麻豆-99久久精品国产国产毛片-99久久精品国产高清一区二区-99久久精品费精品国产一区二区

PYTHON爬蟲——必應(yīng)圖片關(guān)鍵詞爬取

2018-8-31    seo達人

如果您想訂閱本博客內(nèi)容,每天自動發(fā)到您的郵箱中, 請點這里

圖片三個網(wǎng)站的圖片搜索結(jié)果進行爬取和下載。 
首先通過爬蟲過程中遇到的問題,總結(jié)如下: 
1、一次頁面加載的圖片數(shù)量各個網(wǎng)站是不定的,每翻一頁就會刷新一次,對于數(shù)據(jù)量大的爬蟲幾乎都需要用到翻頁功能,有如下兩種方式: 
1)通過網(wǎng)站上的網(wǎng)址進行刷新,例如必應(yīng)圖片:

url = 'http://cn.bing.com/images/async?q={0}&first={1}&count=35&relp=35&lostate=r
&mmasync=1&dgState=x*175_y*848_h*199_c*1_i*106_r*0'
    
  • 1
  • 2

2)通過selenium來實現(xiàn)模擬鼠標操作來進行翻頁,這一點會在Google圖片爬取的時候進行講解。 
2、每個網(wǎng)站應(yīng)用的圖片加載技術(shù)都不一樣,對于靜態(tài)加載的網(wǎng)站爬取圖片非常容易,因為每張圖片的url都直接顯示在網(wǎng)頁源碼中,找到每張圖片對應(yīng)的url即可使用urlretrieve()進行下載。然而對于動態(tài)加載的網(wǎng)站就比較復(fù)雜,需要具體問題具體分析,例如google圖片每次就會加載35張圖片(只能得到35張圖片的url),當(dāng)滾動一次后網(wǎng)頁并不刷新但是會再次加載一批圖片,與前面加載完成的都一起顯示在網(wǎng)頁源碼中。對于動態(tài)加載的網(wǎng)站我推薦使用selenium庫來爬取。

對于爬取圖片的流程基本如下(對于可以通過網(wǎng)址實現(xiàn)翻頁或者無需翻頁的網(wǎng)站): 
1. 找到你需要爬取圖片的網(wǎng)站。(以必應(yīng)為例)

這里寫圖片描述
2. 使用google元素檢查(其他的沒用過不做介紹)來查看網(wǎng)頁源碼。

這里寫圖片描述
3. 使用左上角的元素檢查來找到對應(yīng)圖片的代碼。

這里寫圖片描述
4. 通過觀察找到翻頁的規(guī)律(有些網(wǎng)站的動態(tài)加載是完全看不出來的,這種方法不推薦)

這里寫圖片描述
從圖中可以看到標簽div,class=’dgControl hover’中的data-nexturl的內(nèi)容隨著我們滾動頁面翻頁first會一直改變,q=二進制碼即我們關(guān)鍵字的二進制表示形式。加上前綴之后由此我們才得到了我們要用的url。 
5. 我們將網(wǎng)頁的源碼放進BeautifulSoup中,代碼如下:

url = 'http://cn.bing.com/images/async?q={0}&first={1}&count=35&relp=35&lostate=r&mmasync=1&dgState=x*175_y*848_h*199_c*1_i*106_r*0' agent = {'User-Agent': "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.165063 Safari/537.36 AppEngine-Google."}
page1 = urllib.request.Request(url.format(InputData, i*35+1), headers=agent)
page = urllib.request.urlopen(page1)
soup = BeautifulSoup(page.read(), 'html.parser')
    
  • 1
  • 2
  • 3
  • 4
  • 5

我們得到的soup是一個class ‘bs4.BeautifulSoup’對象,可以直接對其進行操作,具體內(nèi)容自行查找。 
首先選取我們需要的url所在的class,如下圖: 
這里寫圖片描述
波浪線是我們需要的url。 
我們由下面的代碼得到我們需要的url:

if not os.path.exists("./" + word):#創(chuàng)建文件夾 os.mkdir('./' + word) for StepOne in soup.select('.mimg'):
    link=StepOne.attrs['src']#將得到的<class 'bs4.element.Tag'>轉(zhuǎn)化為字典形式并取src對應(yīng)的value。 count = len(os.listdir('./' + word)) + 1 SaveImage(link,word,count)#調(diào)用函數(shù)保存得到的圖片。
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

最后調(diào)用urlretrieve()函數(shù)下載我們得到的圖片url,代碼如下:

 try:
        time.sleep(0.2)
        urllib.request.urlretrieve(link,'./'+InputData+'/'+str(count)+'.jpg') except urllib.error.HTTPError as urllib_err:
        print(urllib_err) except Exception as err:
        time.sleep(1)
        print(err)
        print("產(chǎn)生未知錯誤,放棄保存") else:
        print("圖+1,已有" + str(count) + "張圖")
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

這里需要強調(diào)是像前面的打開網(wǎng)址和現(xiàn)在的下載圖片都需要使用try except進行錯誤測試,否則出錯時程序很容易崩潰,大大浪費了數(shù)據(jù)采集的時間。 
以上就是對單個頁面進行數(shù)據(jù)采集的流程,緊接著改變url中{1}進行翻頁操作繼續(xù)采集下一頁。 
數(shù)據(jù)采集結(jié)果如下: 
這里寫圖片描述

有問題請留言。 

藍藍設(shè)計www.lapeinture.cn )是一家專注而深入的界面設(shè)計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計、BS界面設(shè)計 、 cs界面設(shè)計 、 ipad界面設(shè)計 、 包裝設(shè)計 、 圖標定制 、 用戶體驗 、交互設(shè)計、 網(wǎng)站建設(shè) 平面設(shè)計服務(wù)。

日歷

鏈接

個人資料

藍藍設(shè)計的小編 http://www.lapeinture.cn

存檔

99久久精品国产麻豆| 精品国产一区二区三区国产馆| 99久久精品国产高清一区二区| 亚欧成人毛片一区二区三区四区 | 国产视频一区二区在线播放| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 免费的黄色小视频| 日本特黄一级| 美女免费精品高清毛片在线视 | 精品视频在线看| 中文字幕一区二区三区精彩视频| 亚洲第一页乱| 成人av在线播放| 欧美1区| 色综合久久天天综合绕观看| 99久久视频| 国产不卡精品一区二区三区| 美女免费毛片| 欧美电影免费| 精品在线视频播放| 国产网站免费| 黄视频网站在线观看| 美女免费精品视频在线观看| 免费国产在线视频| 午夜在线影院| 国产不卡精品一区二区三区| 国产成人精品综合| 国产91精品露脸国语对白| 国产国语对白一级毛片| 深夜做爰性大片中文| 91麻豆国产级在线| 九九久久国产精品大片| 九九久久99综合一区二区| 欧美1区| 欧美电影免费| 亚洲 男人 天堂| 国产网站免费视频| 久久国产精品自由自在| 夜夜操天天爽| 成人免费一级纶理片| 国产伦久视频免费观看 视频| 香蕉视频三级| 久久精品欧美一区二区| 久久99中文字幕久久| 欧美大片一区| 青草国产在线| 日韩在线观看视频黄| 久久成人综合网| 日韩在线观看免费| 免费的黄视频| 欧美日本韩国| 久草免费在线观看| 欧美激情中文字幕一区二区| 成人a大片高清在线观看| 九九久久99综合一区二区| 国产一区二区精品久久| 国产精品自拍在线观看| 国产伦精品一区二区三区无广告 | 韩国三级一区| 天天做日日干| 国产不卡在线看| 四虎影视久久久| 韩国三级视频网站| 国产成人啪精品| a级黄色毛片免费播放视频| 国产美女在线一区二区三区| 欧美激情中文字幕一区二区| 亚久久伊人精品青青草原2020| 成人免费一级纶理片| 亚洲精品永久一区| 成人影视在线播放| 久久精品免视看国产明星| 欧美国产日韩一区二区三区| 青青久久精品| 精品国产一区二区三区久久久蜜臀| 精品视频在线观看视频免费视频| 精品国产香蕉伊思人在线又爽又黄| 欧美日本免费| 一级片片| 美女免费黄网站| 久久福利影视| 999精品视频在线| 久久久成人网| a级黄色毛片免费播放视频| 亚飞与亚基在线观看| 欧美一级视频高清片| 日韩综合| 日韩一级精品视频在线观看| 成人免费一级纶理片| 韩国三级视频网站| 欧美大片aaaa一级毛片| 九九久久99综合一区二区| 精品国产一区二区三区精东影业 | 黄色短视频网站| 欧美a免费| 国产a毛片| 成人免费观看视频| 九九九网站| 91麻豆精品国产高清在线| 国产91精品一区二区| 欧美日本二区| 欧美α片无限看在线观看免费| 亚欧乱色一区二区三区| 九九热国产视频| 久久国产一区二区| 99久久网站| 九九久久国产精品大片| 国产麻豆精品视频| 日韩一级精品视频在线观看| 99热精品在线| 超级乱淫黄漫画免费| 久久99中文字幕久久| 一级毛片看真人在线视频| 欧美激情在线精品video| 精品国产一区二区三区国产馆| a级精品九九九大片免费看| 精品在线观看国产| 精品国产亚洲一区二区三区| 国产成人精品综合在线| 香蕉视频三级| 亚洲第一页色| 青青久在线视频| 青青久久网| 欧美激情一区二区三区在线 | 免费毛片播放| 九九久久99综合一区二区| 国产伦理精品| 精品国产亚洲一区二区三区| 在线观看成人网 | 高清一级做a爱过程不卡视频| 九九精品影院| 国产视频久久久久| 国产91精品系列在线观看| 国产91精品一区二区| 日韩中文字幕在线观看视频| 精品国产一区二区三区久| 精品视频一区二区三区| 日韩在线观看网站| 久久精品店| 亚欧成人毛片一区二区三区四区 | 九九精品久久| 国产一区国产二区国产三区| 欧美激情一区二区三区视频 | 日韩男人天堂| 99久久视频| 午夜久久网| 日韩在线观看视频黄| 欧美大片aaaa一级毛片| 亚洲精品久久久中文字| 精品国产一区二区三区免费 | 久久久久久久久综合影视网| 色综合久久天天综合绕观看| 黄色免费网站在线| 日韩在线观看视频黄| 99热精品一区| 日本在线播放一区| 久久精品免视看国产成人2021| 色综合久久手机在线| 免费的黄视频| 色综合久久天天综合| 成人a大片高清在线观看| 久久99中文字幕| 免费一级片在线观看| 国产网站免费| 久草免费在线视频| 超级乱淫黄漫画免费| 精品国产亚洲一区二区三区| 久久国产精品只做精品| 四虎论坛| 毛片高清| 国产韩国精品一区二区三区| 日韩专区在线播放| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 韩国三级香港三级日本三级la| 四虎影视久久久| 精品国产一区二区三区国产馆| 四虎影视久久| 99热精品在线| 欧美a级片免费看| 日本免费乱理伦片在线观看2018| 九九久久99综合一区二区| 日韩av成人| 欧美日本免费| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 九九免费精品视频| 91麻豆精品国产自产在线| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 香蕉视频久久| a级精品九九九大片免费看| 九九精品影院| 99久久精品费精品国产一区二区| 久久精品大片| 国产一区国产二区国产三区| 色综合久久天天综合| 毛片成人永久免费视频| 国产精品自拍在线观看| 精品视频免费在线| 日韩一级黄色片| 国产成人女人在线视频观看| 黄视频网站在线观看|