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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

北京房租到底有多高? | 爬取北京海淀区一居室租房信息

發布時間:2024/9/27 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 北京房租到底有多高? | 爬取北京海淀区一居室租房信息 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圖片來源:花瓣網


文章來源

人工智能與大數據生活



如需轉載,請聯系原作者授權


最近北京房租成了熱門話題,到底北京的房租有多高?

本次實戰是爬取北京海淀區一居室的租房信息,共爬取了300套房源信息,看一下北京的房租到底有多高?效果如下:


開發環境

環境:MAC + Python3.6

IDE:Pycharm

模塊:import requests、from bs4 import BeautifulSoup


爬取目標

本次爬取目標是北京海淀區一居室的租房信息,如下圖所示。這些信息主要包括標題,租金,小區名字,中介的頭像以及姓名。


爬取分析

本次需要爬取300套房源,但是某租房網站的每一頁信息只有30套,如下:

因此我們需要爬取10個網頁的信息,也就是爬取多個頁面。通過觀察,我們發現第二個網址是https://bj.lianjia.com/zufang/haidian/pg2l1/,第三個是https://bj.lianjia.com/zufang/haidian/pg3l1/,因此得出網址的規律是pg2l1的頁面以此加1。

根據上面的分析,我們只需使用一個for循環就可以得到10個頁面的信息,具體代碼如下。然后開始解析每一個頁面。


爬取一個頁面

解析靜態網頁信息三步即可完成:

第一步:

使用requests庫中的get方法解析頁面,但是為了防止被反爬蟲,建議使用headers進行模擬瀏覽器。否則你會得到下面的信息:

代碼如下:

`python`
????#第一步:使用GET獲取頁面請求
????#獲取頁面信息
????headers?=?{
????????'User-Agent':?'Mozilla/5.0?(Macintosh;?Intel?Mac?OS?X?10_13_3)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/65.0.3325.162?Safari/537.36'
????}
????data_url?=?requests.get(url,headers=headers)

第二步:

進行頁面解析,找到需要的信息。本次使用的是BeautifulSoup庫。Beautiful Soup提供一些簡單的、python式的函數用來處理導航、搜索、修改分析樹等功能。它是一個工具箱,通過解析文檔為用戶提供需要抓取的數據,因為簡單,所以不需要多少代碼就可以寫出一個完整的應用程序,具體代碼如下:

`python`
????#第二步:開始解析頁面
????soup?=BeautifulSoup(data_url.text,'lxml')

????#print(soup)


第三步:

使用selector進行解析頁面,找到租房信息的詳細頁面。selector 定位需要的信息數據,具體方法是鼠標放在圖片上,右鍵,檢查,copy-CSS SELECTOR。瀏覽器自動copy出來css樣式,具體代碼如下:

`python`
???'''
????????使用selector進行解析頁面,找到租房信息的詳細頁面。
????????也就是進行頁面的跳轉
????'''

????#鼠標放在圖片上,右鍵,檢查,copy-CSS?SELECTOR
????#一定要去掉:NTH-CHILD(1)否則出差錯
????#?house-lst?>?li:nth-child(1)?>?div.pic-panel?>?a
????soup_selects?=?soup.select('#house-lst?>?li?>?div.pic-panel?>?a')

????print(soup_selects)

????for?soup_select?in?soup_selects:
????????#?selector返回的是一個列表,有很多屬性信息,目的是鏈接,所以選擇href
????????href_url?=?soup_select.get("href")
????????#第三步,找到詳細頁面進行解析
????????#print("得到詳情頁面信息")
????????#print(href_url)
????????get_detail_info(href_url)

爬取目標頁面信息

由于詳細的房租信息也是一個新的頁面,所以需要進行再次的重復上面的三步,具體代碼如下:

`python`
????#第一步:?使用URL獲取頁面
????detail_url?=?requests.get(url)

????#第二步:使用BS4解析數據
????detail_soup?=?BeautifulSoup(detail_url.text,'lxml')

????#第三步:使用?selecter?定位需要的信息數據

????#獲取名稱
????#body?>?div:?nth?-?child(7)?>?div.title?-?wrapper?>?div?>?div.title?>?h1
????titles?=?detail_soup.select("body?>?div?>?div.title-wrapper?>?div?>?div.title?>?h1")
????#print("租房信息的標題是{}".format(titles))

????#獲取地址
????addresses?=?detail_soup.select("body?>?div?>?div.overview?>?div.content.zf-content?>?div.zf-room?>?p?>?a")
????#print("小區名字是{}".format(addresses))

????#獲取價格
????#body?>?div:nth-child(7)?>?div.overview?>?div.content.zf-content?>?div.price?>?span.total
????prices?=?detail_soup.select("body?>?div?>?div.overview?>?div.content.zf-content?>?div.price?>?span.total")
????#print("租房在海淀區,一居室的價格是{}".format(prices))

????#獲取圖片
????##topImg?>?div.imgContainer?>?img
????images?=?detail_soup.select("#topImg?>?div.imgContainer?>?img")


????#獲取中介頭像
???#?body?>?div:?nth?-?child(7)?>?div.overview?>?div.content.zf?-?content?>?div.brokerInfo?>?a?>?img
????avartars?=?detail_soup.select("body?>?div?>?div.overview?>?div.content.zf-content?>?div.brokerInfo?>?a?>?img")

????#獲取中介姓名
????#body?>?div:nth-child(7)?>?div.overview?>?div.content.zf-content?>?div.brokerInfo?>?div?>?div.brokerName?>?a.name.LOGCLICK
????names?=?detail_soup.select("body?>?div?>?div.overview?>?div.content.zf-content?>?div.brokerInfo?>?div?>?div.brokerName?>?a.name.LOGCLICK")

????#獲取房東性別
????#sexs?=?address?=?detail_soup.select("#floatRightBox?>?div.js_box.clearfix?>?div.member_pic?>?div")

效果如下

到此,整個爬蟲流程完成,完美的爬出來想要的信息,然后就可以分析北京的房租了。


掃描下方二維碼加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習吧~~

成為群成員,或拉人進群,

還有機會獲得免費贈書哦~~


投稿啦!!!



精彩繼續

CSDN作為國內專業的云計算服務平臺,目前提供云計算、大數據、虛擬化、數據中心、OpenStack、CloudStack、機器學習、智能算法等相關云計算觀點、技術、平臺、實踐、云產業咨詢等服務。CSDN?公眾號也一直堅持「與千萬技術人共成長」的理念,深度解讀行業內熱門技術與場景應用,致力于讓所有開發者保持敏銳的技術嗅覺、對行業趨勢與技術獲得更廣闊的認知。

文章題材

  • 首先你需要關注我們的公眾號“CSDN云計算”,這樣你會更準確了解我們需要的文章風格;

  • 側重于云計算領域相關的文章,可以是技術、運維、趨勢等方面的務實內容;

  • 原創,要求文章有鮮明觀點和看法。

投稿須知

  • ?稿費:根據原創性、實用性和時效性等方面進行審核,通過的文章會發布在本微信平臺。一經采用,我們將支付作者酬勞。酬勞可能不多,這代表的是一個心意,更多是因為愛好,是有識之士抒發胸懷的一種方式;

  • 字數要求:稿件字數以2K-8K為宜,少于2K或多于8K都會一定程度降低閱讀愉悅感;

  • 投稿郵箱:lijy@csdn.net。或者添加微信表明來意,微信號:tangguoyemeng。請備注投稿+姓名+公司職位


如果咱們的合作穩定又愉快,還可以簽訂合同長期合作哦!


總結

以上是生活随笔為你收集整理的北京房租到底有多高? | 爬取北京海淀区一居室租房信息的全部內容,希望文章能夠幫你解決所遇到的問題。

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