基于python爬取链家二手房信息代码示例
作者:六月流火 发布时间:2022-09-01 18:36:25
标签:python,爬取,链家,信息
基本环境配置
python 3.6
pycharm
requests
parsel
time
相关模块pip安装即可
确定目标网页数据
哦豁,这个价格..................看到都觉得脑阔疼
通过开发者工具,可以直接找到网页返回的数据~
每一个二手房的数据,都在网页的 li 标签里面,咱们可以获取网页返回的数据,然后通过解析,就可以获取到自己想要的数据了~
获取网页数据
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
解析网页数据
import parsel
selector = parsel.Selector(response.text)
lis = selector.css('.sellListContent li')
dit = {}
for li in lis:
title = li.css('.title a::text').get()
dit['标题'] = title
positionInfo = li.css('.positionInfo a::text').getall()
info = '-'.join(positionInfo)
dit['开发商'] = info
houseInfo = li.css('.houseInfo::text').get()
dit['房子信息'] = houseInfo
followInfo = li.css('.followInfo::text').get()
dit['发布周期'] = followInfo
Price = li.css('.totalPrice span::text').get()
dit['售价/万'] = Price
unitPrice = li.css('.unitPrice span::text').get()
dit['单价'] = unitPrice
csv_writer.writerow(dit)
print(dit)
保存数据
import csv
f = open('二手房信息.csv', mode='a', encoding='utf-8-sig', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['标题', '开发商', '房子信息', '发布周期', '售价/万', '单价'])
csv_writer.writeheader()
csv_writer.writerow(dit)
f.close()
来源:https://www.cnblogs.com/liuyueqingfeng/p/13705565.html
0
投稿
猜你喜欢
- 预编译语句预编译语句是一种用于执行参数化SQL查询的技术,它可以提高性能并减少SQL注入的风险。预编译语句主要有以下优势:避免SQL注入攻击
- 本文实例讲述了Python中XlsxWriter模块用法。分享给大家供大家参考,具体如下:XlsxWriter,可以生成excel文件(xl
- 我就废话不多说,直接上代码吧!#Copyright (c)2017, 东北大学软件学院学生# All rightsreserved#文件名称
- 本文实例讲述了微信小程序之事件交互操作。分享给大家供大家参考,具体如下:微信小程序—点击事件什么是事件?指点击,触摸,按下,滑动,松开,等一
- 本文实例讲述了Python实现获取命令行输出结果的方法。分享给大家供大家参考,具体如下:Python获取命令行输出结果,并对结果进行过滤找到
- 在Python我们要判断一个文件对当前用户有没有读、写、执行权限,我们通常可以使用os.access函数来实现,比如:# 判断读权限os.a
- 前言上位机实战开发先放一放,今天来学习一个新的内容—NumPy的使用1 一维数组例:用普通方法生成一维数组num = [0 for i in
- tf.nn.conv2d与tf.layers.conv2d的区别在写CNN中注意到tensorflow目前有tf.nn.conv2d和tf.
- 本文为大家分享了python的concat等多种用法,供大家参考,具体内容如下1、numpy中的concatenate()函数:>&g
- 如下所示:函数功能abs(x)返回一个数的绝对值。 参数可以是一个整数或浮点数。 如果参数是一个复数,则返回它的模。all(iterable
- 前言在访问量大的时候,为了提高查询效率,我们会将数据先缓存到redis中。先查询redis,查询不到再去查询数据库,实现这个逻辑也不复杂,写
- 程序在运行过程中所有的的数据都存储在内存 (RAM) 中,「RAM 是易失性存储器,系统掉电后 RAM 中的所有数据将全部丢失」。在大多数情
- 1.循环# 1.for...in循环,依次把list或tuple中的每个元素迭代出来studentNames = ["Willar
- 本文实例分析了python开发之list操作。分享给大家供大家参考,具体如下:对python中list的操作,大家可以参考《Python l
- python中迭代器和iter()函数迭代器为类序列对象提供了一个类序列的接口。python的迭代无缝地支持序列对象,而且它还允许程序员迭代
- 我们使用tp或者yii2的时候,会将网站的前台和后台按照模块分组。yii2的高级模板已经帮我们划分好了,tp系列框架需要自己配置分组。那么l
- 今天学习了数组,可以说是PHP的数据应用中较重要的一种方式。PHP的数组函数众多,下面是我学习的小结,借此记之,便于以后鉴之…… 一、数组定
- 将表数据生成SQL脚本的存储过程示例:CREATE PROCEDURE dbo.UspOutputData @tablename sysna
- 利用oracle的dbms_random包结合rownum来实现,示例如下,随机取499户: select * from ( select
- 1_cookie[掌握]解释: 用来保持服务器和浏览器交互的状态的, 由服务器设置,存储在浏览器作用: 用来做广告推送cookie的设置和获