刚入门学习Python爬虫,因为后边将会去深圳发展,所以练习了一个用python爬取深圳房价进行可视分析的项目,希望有所帮助。
好!进入正题!
我选择爬取的是链家网的深圳二手房网页,截图如下:
查看链家网网址的变化规律,分别翻看第一页到第三页,可以看到url分别是:
https://sz.lianjia.com/ershoufang/pg1/
https://sz.lianjia.com/ershoufang/pg2/
https://sz.lianjia.com/ershoufang/pg3/
规律很明显,页面分别对应着结尾的pg1/pg2/pg3,这样我们就可以对100个页面进行很方便的爬取。
然后是对页面信息的爬取,这里我爬取楼盘的名字、所在的区段、总价和均价,比如联城美园、春风路、358万、56700元/平米。选择用BeautifulSoup来进行这几个信息的获取,具体的用法较为简单,可以搜索一下可以很快上手。获取信息后,存入csv文件中,具体代码如下:
import requests
import csv
from bs4 import BeautifulSoup
import lxml
import datetime
import json
import time
def request_page(url):
date = datetime.datetime.now().strftime('%Y-%m-%d')
html = requests.get(url)
soup = BeautifulSoup(html.content,"lxml")
try:
for k in soup.find('ul',class_="sellListContent").find_all('li',class_="clear LOGCLICKDATA"):
#分别查找小区,街道,区域,总价,均价
community = k.find('div',class_="houseInfo").find('a',target="_blank").getText().strip()
district = k.find('div',class_="flood").find('a',target="_blank").getText()
total_price = k.find('div',class_="totalPrice"