當前位置:
首頁 > 最新 > 利用python爬取安居客租房信息

利用python爬取安居客租房信息

今天小編給大家分享一下python3利用selenium爬取安居客房租信息的爬蟲,有源碼和思路分析。

首先說一下思路:

selenium有點擊和輸入模擬,所以打開鏈接後----->想網頁輸入想查詢的城市------>到了相應的頁面再點擊相應的按鈕------>獲取頁面中所有信息------>點擊「下一頁」------>循環獲取網頁內容。

1.寫好注釋,導入模塊。

#!/usr/bin/env python3

#-*- coding: utf-8 -*-

#導入模塊

fromseleniumimportwebdriver

importtime

importos

importrandom

importdatetime

2.查詢租房信息,該網站只提供50頁的租房信息,所以爬取50頁,由於第50頁時,點擊下一頁無反應,會報錯,所以添加一個異常處理。 PS:英語水平有限,只好拼音代替,還望各位不要嫌棄,目前正在努力學習英語中,以後會逐漸改成純英文。#查詢租房信息

#查詢租房信息

#查詢租房信息def search_home(city): url = "https://www.anjuke.com/sy-city.html" browser = webdriver.Chrome() browser.get(url) #點擊相應的按鈕。。。。。。 browser.find_element_by_link_text(city).click() browser.find_element_by_link_text("租 房").click() #創建列表,用來存儲爬取到的信息。   jia_ge = [] title = [] xin_xi = [] di_zhi = [] n = 1#循環獲得每一頁的信息,只能爬取50頁。 while n

3. 寫入文本文件中。

由於作者用linux寫的爬蟲,所以文件路徑與windows不一樣。

os.mkdir()是創建一個空文件夾,之所以用了一個異常處理,是因為在寫爬蟲時需要調試一下,如果文件已存在會報錯。

#寫入文件中def write_txt(tuples,city): file = "/home/123456/桌面/%s" % city try: os.mkdir(file) except: pass with open("%s/%s.txt" % (file,city),"w") as txt: for wa,wb,wc,wd in zip(tuples[0],tuples[1],tuples[2],tuples[3]): txt.write("標題: %s, 信息: %s, 地址: %s, 價格: %s

" % (wa,wb,wc,wd)) return txt.close()

4.運行程序。

最後將以上幾塊代碼拼起來就能運行了,此代碼還可以進行一些變動,查詢房價等信息。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 網路安全你我同行 的精彩文章:

TAG:網路安全你我同行 |