日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

大数据——python爬虫

發(fā)布時(shí)間:2023/12/10 python 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大数据——python爬虫 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

爬蟲(chóng)——首次實(shí)現(xiàn)爬取圖像

前言:早在寫論文期間想利用爬蟲(chóng)技術(shù)爬取圖像相關(guān)圖像數(shù)據(jù),作為大數(shù)據(jù)、深度學(xué)習(xí)的數(shù)據(jù)資源。著手學(xué)習(xí)python,但由于各種原因最終沒(méi)有實(shí)現(xiàn),而是用了最笨的鼠標(biāo)右鍵-保存操作,現(xiàn)在來(lái)彌補(bǔ)這一遺憾。文章主要參考嵐漾憶雨博主的Python爬蟲(chóng)之——爬取妹子圖片。

一、平臺(tái)

本項(xiàng)目實(shí)現(xiàn)平臺(tái)為Win10,Pycharm,這里就不具體介紹了。

二、準(zhǔn)備條件

學(xué)習(xí)python相關(guān)基礎(chǔ)知識(shí)后,發(fā)現(xiàn)距離掌握爬蟲(chóng)技術(shù)還是有一定差距,主要是對(duì)爬蟲(chóng)技術(shù)中涉及到幾個(gè)第三方庫(kù)認(rèn)識(shí)不夠。但是在實(shí)現(xiàn)本項(xiàng)目后發(fā)現(xiàn),如果你的正則表達(dá)學(xué)習(xí)的夠好,那么你完全可以不依靠第三方庫(kù)來(lái)實(shí)現(xiàn)(此處待寫完本博再斟酌)。

準(zhǔn)備的第三方庫(kù)為:

requests??
beautifulsoup4??

這兩個(gè)庫(kù)在這里不做解釋,需大家自己搜資料學(xué)習(xí),因?yàn)楹?jiǎn)單解釋對(duì)于完成本項(xiàng)目顯得徒勞,因此需要深入學(xué)習(xí)。

三、具體實(shí)現(xiàn)過(guò)程

原理就刻板的敘述了,其大體過(guò)程就是使用python編程按照個(gè)人目的,自動(dòng)獲取網(wǎng)頁(yè)上的圖像信息,并保存下來(lái)。

本文爬取的目標(biāo)是:http://www.haijun360.com/news/QZJ/QZJ.html

具體分為以下幾個(gè)階段:

  • 獲取HTML頁(yè)面信息;
  • 處理HTML頁(yè)面數(shù)據(jù),提取所需信息;
  • 保存提取到得到信息。
  • 第1、2步可以循環(huán)使用,直到找到所需信息為止。

    1.獲取HTML頁(yè)面信息

    個(gè)人感覺(jué)爬蟲(chóng)的關(guān)鍵技術(shù)主要集中在第一步,第一步體現(xiàn)了和網(wǎng)站運(yùn)維人員的斗智斗勇。簡(jiǎn)單說(shuō)就是你要把自己的爬蟲(chóng)程序偽裝成瀏覽器,這樣才不會(huì)被對(duì)方服務(wù)器發(fā)現(xiàn)。其中對(duì)于初學(xué)者主要涉及get及post請(qǐng)求兩種,在將自己偽裝成瀏覽器的技術(shù)方面會(huì)涉及到headers,繼而是cookie,然后就是動(dòng)態(tài)token,及驗(yàn)證碼等。

    最簡(jiǎn)單的是模擬瀏覽器的方法是,是使用瀏覽器的User-Agent,即headers={'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'},不同的瀏覽器,可能會(huì)不同,可以在網(wǎng)頁(yè)代碼中查看(F12打開(kāi)網(wǎng)頁(yè)代碼),如下圖所示:

    #coding=utf-8import requestsurl = 'www.baidu.com'headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}html = requests.get(url,headers=header)

    代碼中的url可以替換為你想爬取的目標(biāo)網(wǎng)站,以上代碼完成了爬蟲(chóng)的第一步(這是爬取沒(méi)有不設(shè)防的網(wǎng)站,也是最簡(jiǎn)單的的)。

    接下來(lái)可以采用bs4的Beautifulsoup來(lái)解析響應(yīng)的html.

    2.處理HTML頁(yè)面數(shù)據(jù),提取所需信息

    解析獲取到的HTML,方法很多,可以將其轉(zhuǎn)換成不同的格式,也可以通過(guò)不同的方法來(lái)解析,如正則表達(dá)、xpath,Beautifulsoup等。這里采用Beautifulsoup,簡(jiǎn)單....

    soup = BeautifulSoup(html.text,'html.parser')pages = soup.find_all('table',class_='weiquan')pic_str = page.find('a').attrs['href']

    這里僅僅截取程序中的一段代碼,使用時(shí)針對(duì)個(gè)人的情況采用Beautiful中的find及find_all函數(shù)。具體使用方法,可以用百度查找,有很多相關(guān)的介紹。

    3.保存提取到得到信息

    第二步提取到了相關(guān)網(wǎng)頁(yè)的url或者是需要下載的圖片的url,那么可以通過(guò)python3的file函數(shù)來(lái)保存數(shù)據(jù)。

    with open(filename,'wb+') as f:f.write(html.content)

    open的具體參數(shù)可以在相關(guān)文檔上查找。其中的html.content為網(wǎng)頁(yè)提取到的內(nèi)容。

    以上是學(xué)習(xí)pyhton爬蟲(chóng)的相關(guān)心得,時(shí)間有限,寫的比較粗糙,其中不免有錯(cuò),歡迎讀者提問(wèn)。

    總結(jié)

    以上是生活随笔為你收集整理的大数据——python爬虫的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。