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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Python数据分析:爬虫从网页爬取数据需要几步?

發布時間:2024/1/1 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python数据分析:爬虫从网页爬取数据需要几步? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于數據分析師來說,數據獲取通常有兩種方式,一種是直接從系統本地獲取數據,另一種是爬取網頁上的數據,爬蟲從網頁爬取數據需要幾步?總結下來,Python爬取網頁數據需要發起請求、獲取響應內容、解析數據、保存數據共計4步。

本文使用Python爬取去哪兒網景點評論數據共計100條數據,數據爬取后使用Tableau Public軟件進行可視化分析,從數據獲取,到數據清洗,最后數據可視化進行全流程數據分析,下面一起來學習。

示例工具:anconda3.7

本文講解內容:數據獲取、數據可視化

適用范圍:網頁數據獲取及評論分析

網頁數據爬取

Python爬取網頁數據需要發起請求、獲取響應內容、解析數據、保存數據共計4步,懂的數據爬取的原理后,進行數據爬取。

1、發起請求

以去哪兒旅行網站為例,爬取網頁數據,首先發送請求。

import requests u='https://travel.qunar.com/p-cs300100-xian-jingdian'#爬取網址 response=requests.get(u) print('狀態碼:{}'.format(response.status_code)) if response.status_code != 200:pass else:print("服務器連接正常")

?這里返回狀態碼為200,說明服務器連接正常,可以進行數據爬取。

2、獲取響應內容

服務器連接正常后,直接打印返回內容,這里返回整個網頁html。

print(response.text)

3、解析數據

網頁結構由復雜的html語言構成,這里借助BeautifulSoup庫進行解析。

from bs4 import BeautifulSoupri = requests.get(url=u) soupi=BeautifulSoup(ri.text,'lxml')#解析網址 ul=soupi.find('ul',class_='list_item clrfix') lis = ul.find_all('li') lis

對于特定的標簽進行定位,輸出text。

print(soupi.h1.text)#標簽定位,輸出text lis=ul.find_all('li') print(lis[0].text)

建立一個字典,解析目標標簽內容。

li1=lis[0] dic={} dic['景點名稱']=li1.find('span',class_="cn_tit").text dic['攻略提到數量']=li1.find('div',class_="strategy_sum").text dic['評論數量']=li1.find('div',class_="comment_sum").text dic['lng']=li['data-lng'] dic['lat']=li['data-lat'] dic

使用for循環解析標簽內容。

import requests from bs4 import BeautifulSoup u1='https://travel.qunar.com/p-cs300100-xian-jingdian' ri=requests.get(url= u1)soupi=BeautifulSoup(ri.text,'lxml')#解析網址 ul=soupi.find('ul',class_='list_item clrfix') lis=ul.find_all('li') for li in lis:dic={}dic['景點名稱']=li.find('span',class_="cn_tit").textdic['攻略提到數量']=li.find('div',class_="strategy_sum").textdic['評論數量']=li.find('div',class_="comment_sum").textdic['lng']=li['data-lng']dic['lat']=li['data-lat'] print(dic)

根據翻頁規律設置翻頁數,這里設置一個列表,用來循環爬取前十頁數據。

#根據翻頁規律,設置翻頁數 urllst=[] for i in range(11):urllst.append('https://travel.qunar.com/p-cs300100-xian-jingdian'+str('-1-')+str(i))urllst=urllst[2:11]urllst.append('https://travel.qunar.com/p-cs300100-xian-jingdian') urllst

4、保存數據

新建一個空的數據框,用于保存數據。

import pandas as pd dic = pd.DataFrame(columns=["景點名稱", "攻略提到數量", "評論數量", "lng", "lat"]) dic

在空的數據框中保存第一條數據,并且使用for循環,依次爬取其余頁面的數據。

n=0 dic.loc[n, '景點名稱'] = li.find('span', class_="cn_tit").text dic.loc[n, '攻略提到數量'] = li.find('div', class_="strategy_sum").text dic.loc[n, '評論數量'] = li.find('div', class_="comment_sum").text dic.loc[n, 'lng'] = li['data-lng'] dic.loc[n, 'lat'] = li['data-lat'] dic

最后

如果對Python感興趣的話,可以試試我的學習方法以及相關的學習資料

Python所有方向的學習路線

Python所有方向的技術點做的整理,形成各個領域的知識點匯總,它的用處就在于,你可以按照上面的知識點去找對應的學習資源,保證自己學得較為全面。

二、Python必備開發工具
?

三、精品Python學習書籍

當我學到一定基礎,有自己的理解能力的時候,會去閱讀一些前輩整理的書籍或者手寫的筆記資料,這些筆記詳細記載了他們對一些技術點的理解,這些理解是比較獨到,可以學到不一樣的思路。

四、Python視頻合集

觀看零基礎學習視頻,看視頻學習是最快捷也是最有效果的方式,跟著視頻中老師的思路,從基礎到深入,還是很容易入門的。

五、實戰案例

光學理論是沒用的,要學會跟著一起敲,要動手實操,才能將自己的所學運用到實際當中去,這時候可以搞點實戰案例來學習。

六、Python練習題

檢查學習結果。

七、面試資料

我們學習Python必然是為了找到高薪的工作,下面這些面試題是來自阿里、騰訊、字節等一線互聯網大廠最新的面試資料,并且有阿里大佬給出了權威的解答,刷完這一套面試資料相信大家都能找到滿意的工作。

大家拿到腦圖后,根據腦圖對應的學習路線,做好學習計劃制定。根據學習計劃的路線來逐步學習,正常情況下2個月以內,再結合文章中資料,就能夠很好地掌握Python并實現一些實踐功能。

?

總結

以上是生活随笔為你收集整理的Python数据分析:爬虫从网页爬取数据需要几步?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。