欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python網(wǎng)絡(luò)爬蟲之爬取微博熱搜

 更新時間:2019年04月18日 10:46:41   作者:Huan_Yang  
這篇文章主要介紹了Python網(wǎng)絡(luò)爬蟲之爬取微博熱搜的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

微博熱搜的爬取較為簡單,我只是用了lxml和requests兩個庫

url= https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6

1.分析網(wǎng)頁的源代碼:右鍵--查看網(wǎng)頁源代碼.

從網(wǎng)頁代碼中可以獲取到信息

(1)熱搜的名字都在<td class="td-02">的子節(jié)點<a>里

(2)熱搜的排名都在<td class=td-01 ranktop>的里(注意置頂微博是沒有排名的!)

(3)熱搜的訪問量都在<td class="td-02">的子節(jié)點<span>里

2.requests獲取網(wǎng)頁

(1)先設(shè)置url地址,然后模擬瀏覽器(這一步可以不用)防止被認出是爬蟲程序。

###網(wǎng)址
url="https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6"
###模擬瀏覽器,這個請求頭windows下都能用
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}

(2)利用req uests庫的get()和lxml的etr ee()來獲 取網(wǎng)頁代碼

###獲取html頁面
  html=etree.HTML(requests.get(url,headers=header).text)

3.構(gòu)造xpath路徑

上面第一步中三個xath路徑分別是:

affair=html.xpath('//td[@class="td-02"]/a/text()')
rank=html.xpath('//td[@class="td-01 ranktop"]/text()')
view=html.xpath('//td[@class="td-02"]/span/text()')

  xpath的返回結(jié)果是列表,所以affair、rank、view都是字符串列表

  4.格式化輸出

  需要注意的是affair中多了一個置頂熱搜,我們先將他分離出來。

top=affair[0]
affair=affair[1:]

這里利用了python的切片。

 print('{0:<10}\t{1:<40}'.format("top",top))
  for i in range(0, len(affair)):
    print("{0:<10}\t{1:{3}<30}\t{2:{3}>20}".format(rank[i],affair[i],view[i],chr(12288)))

這里還是沒能做到完全對齊。。。

 5.全部代碼

###導(dǎo)入模塊
import requests
from lxml import etree
###網(wǎng)址
url="https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6"
###模擬瀏覽器
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
###主函數(shù)
def main():
  ###獲取html頁面
  html=etree.HTML(requests.get(url,headers=header).text)
  rank=html.xpath('//td[@class="td-01 ranktop"]/text()')
  affair=html.xpath('//td[@class="td-02"]/a/text()')
  view = html.xpath('//td[@class="td-02"]/span/text()')
  top=affair[0]
  affair=affair[1:]
  print('{0:<10}\t{1:<40}'.format("top",top))
  for i in range(0, len(affair)):
    print("{0:<10}\t{1:{3}<30}\t{2:{3}>20}".format(rank[i],affair[i],view[i],chr(12288)))
main()

結(jié)果展示:

總結(jié)

以上所述是小編給大家介紹的Python網(wǎng)絡(luò)爬蟲之爬取微博熱搜,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Python實戰(zhàn)之大魚吃小魚游戲的實現(xiàn)

    Python實戰(zhàn)之大魚吃小魚游戲的實現(xiàn)

    這篇文章主要介紹了如何利用Python制作一個經(jīng)典游戲之大魚吃小魚,文中的示例代碼講解詳細,對我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-04-04
  • Pandas中datetime數(shù)據(jù)類型的使用

    Pandas中datetime數(shù)據(jù)類型的使用

    本文主要介紹了Pandas中datetime數(shù)據(jù)類型的使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-12-12
  • Python編程實現(xiàn)粒子群算法(PSO)詳解

    Python編程實現(xiàn)粒子群算法(PSO)詳解

    這篇文章主要介紹了Python編程實現(xiàn)粒子群算法(PSO)詳解,涉及粒子群算法的原理,過程,以及實現(xiàn)代碼示例,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Django 反向生成url實例詳解

    Django 反向生成url實例詳解

    這篇文章主要介紹了Django 反向生成url實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • 詳解用Python把PDF轉(zhuǎn)為Word方法總結(jié)

    詳解用Python把PDF轉(zhuǎn)為Word方法總結(jié)

    這篇文章主要介紹了詳解用Python把PDF轉(zhuǎn)為Word方法總結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Python實現(xiàn)CART決策樹算法及詳細注釋

    Python實現(xiàn)CART決策樹算法及詳細注釋

    CART算法是一種樹構(gòu)建算法,既可以用于分類任務(wù),又可以用于回歸,本文僅討論基本的CART分類決策樹構(gòu)建,不討論回歸樹和剪枝等問題,感興趣的朋友跟隨小編一起看看吧
    2021-10-10
  • Python3之外部文件調(diào)用Django程序操作model等文件實現(xiàn)方式

    Python3之外部文件調(diào)用Django程序操作model等文件實現(xiàn)方式

    這篇文章主要介紹了Python3之外部文件調(diào)用Django程序操作model等文件實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python3.5實現(xiàn)socket通訊示例(TCP)

    python3.5實現(xiàn)socket通訊示例(TCP)

    本篇文章主要介紹了python3.5實現(xiàn)socket通訊示例(TCP),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Python深度學(xué)習(xí)實戰(zhàn)PyQt5菜單和工具欄功能作用

    Python深度學(xué)習(xí)實戰(zhàn)PyQt5菜單和工具欄功能作用

    本文詳細解讀通過 QtDesigner 創(chuàng)建主窗口、菜單欄和工具欄,并以菜單項 “退出” 為例關(guān)聯(lián)系統(tǒng)定義的動作處理方法。有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-10-10
  • Python調(diào)用C/C++動態(tài)鏈接庫的方法詳解

    Python調(diào)用C/C++動態(tài)鏈接庫的方法詳解

    這篇文章主要介紹了Python調(diào)用C/C++動態(tài)鏈接庫的方法,需要的朋友可以參考下
    2014-07-07

最新評論