赞
踩
前面已经进行了爬虫基础部分的学习,于是自己也尝试爬了一些网站数据,用的策略都是比较简单,可能有些因素没有考虑到,但是也爬取到了一定的数据,下面介绍两个爬过的案例。
链家网站的爬取不难,我爬取的主要是租房数据,看一下页面:
我需要爬取的字段有房子的名称,小区,面积,朝向,户型,以及房租。
代码比较简单,主要使用了requests和xpath进行爬取,爬取了100页得数据。
import requests import pandas as pd import re from lxml import etree url = 'https://bj.lianjia.com/zufang/pg' resp = requests.get(url) time.sleep(0.5) resp_text = resp.text tree = etree.HTML(resp.text) info_list = tree.xpath('//div[@class="content__list"]/div') for info in info_list: name = info.xpath('./a/@title') #detail_1 = info.xpath('.//div[@class="content__list--item--main"]/p[2]//text()') location = info.xpath('.//div[@class="content__list--item--main"]/p[2]/a/text()') detail_list = info.xpath('.//div[@class="content__list--item--main"]/p[2]/text()') detail_string = ''.join(detail_list) detail_text = re.sub('[\r\n\t\s//\-]', '', detail_string) price = tree.xpath('//*[@id="content"]/div[1]/div[1]/div[1]/div/span//text()') price = ''.join(price) #detail_1 = info.xpath('.//div[@class="content__list--item--main"]/p/a/text()') #detail_2 = info.xpath('.//div[@class="content__list--item--main"]/p/i/text()') print(name,location,detail_text,price) f.write("{},{},{},{}\n".format(name
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。