爬虫练习 -- 链家
注意:请不要爬取过多信息,仅供学习。
分析:
- 业务需求分析......(此例为住房信息...)
- 查找相关网页信息(以链家为例)
- 分析URL,查找我们需要的内容,建立连接
- 定位数据
- 存储数据
首先进入链家网首页,点击租房,F12检查网页,查找我们需要的信息。如图:
第一页url:https://bj.lianjia.com/zufang/
第二页url:https://bj.lianjia.com/zufang/pg2/
然后再定位我们需要的信息:如下图
下面就开始代码实现,我们的分析过程,获取数据,对数据进行定位。
主要代码:
# url 页码拼接
url = 'https://bj.lianjia.com/zufang/pg{}'.format(page)
# 利用Xpath 对数据进行定位
...
html_pipei = html_ele.xpath('//ul[@id="house-lst"]/li')
for pipei_one in html_pipei:
title = pipei_one.xpath('./div[2]/h2/a')[0].text
region = pipei_one.xpath('./div[2]/div[1]/div[1]/a/span')[0].text
...
完整代码如下:
import requests
from lxml import etree
import pymysql
class Mysql(object):
'''执行数据操作封装类'''
def __init__(self):
'''连接数据库、创建游标'''
self.db = pymysql.connect(host="localhost", user="root", password="8888", database="test")
self.cursor = self.db.cursor()
def mysql_op(self, sql, data):
'''MySQL语句'''
self.cursor.execute(sql, data)
self.db.commit()
def __del__(self):
'''关闭游标、关闭数据库'''
self.cursor.close()
self.db.close()
# MySQL语句
Insert = Mysql()
# 要执行的sql 语句
sql = '''INSERT INTO lianjia (title, region, zone, meters, location, price) VALUES(%s, %s, %s, %s, %s, %s)'''
# 头部报文
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
}
def download_msg():
for page in range(1, 2):
url = 'https://bj.lianjia.com/zufang/pg{}'.format(page)
responses = requests.get(url, headers=headers)
html = responses.text
# 利用Xpath
html_ele = etree.HTML(html)
html_pipei = html_ele.xpath('//ul[@id="house-lst"]/li')
# print(html_pipei)
for pipei_one in html_pipei:
# ./li/div[2]/a
title = pipei_one.xpath('./div[2]/h2/a')[0].text
# print(title)
region = pipei_one.xpath('./div[2]/div[1]/div[1]/a/span')[0].text
# print(region)
zone = pipei_one.xpath('./div[2]/div[1]/div[1]/span[1]/span')[0].text
# print(zone)
meters = pipei_one.xpath('./div[2]/div[1]/div[1]/span[2]')[0].text
# print(meters)
location = pipei_one.xpath('./div[2]/div[1]/div[1]/span[3]')[0].text
# print(location)
price = pipei_one.xpath('.//div[@class="price"]/span')[0].text
# print(price)
data = (title, region, zone, meters, location, price)
Insert.mysql_op(sql, data)
if __name__ == '__main__':
download_msg()
爬虫练习 -- 链家相关推荐
- 爬虫实战-链家北京房租数据
爬虫实战-链家北京房租数据 本篇是对 恋习Python 发布的原创文章<北京房租大涨?6个维度,数万条数据帮你揭穿>中涉及的代码部分的解读. < 在复现原文代码时,出现了一些报错,在 ...
- python爬虫requests源码链家_python的爬虫项目(链家买二手房)
不知不觉,已经工作6年有余,恍恍惚惚,有机会满足房子需求. 在收集房子信息过程中,做些记录. 贝壳的功能很强大,但很难满足小区.距离.教育.面积等多个方面的匹配,使用起来成本仍然较高. 针对以上情况, ...
- 爬虫+可视化——链家杭州二手房房源信息
------------本篇文章旨在练习数据的爬取及可视化 简介 本项目分两个部分: 1.爬虫:共爬取到链家杭州二手房信息30806条 2.可视化:主要用pyecharts 一.获取数据 提取杭州各个 ...
- 手把手教你利用Python网络爬虫获取链家网的房产信息
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来. ...
- python链家网爬虫_手把手教你利用Python网络爬虫获取链家网的房产信息
点击上方" Python爬虫与数据挖掘 ",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来 ...
- 爬虫:链家房产租房信息深度爬取(运用redis和mysql)
""" 1导入各种应用模块 import redis #用来进行redis数据库连接 import requests #requests 请求 from lxml imp ...
- 爬虫实战:链家租房数据爬取,实习僧网站数据爬取
前面已经进行了爬虫基础部分的学习,于是自己也尝试爬了一些网站数据,用的策略都是比较简单,可能有些因素没有考虑到,但是也爬取到了一定的数据,下面介绍两个爬过的案例. 爬虫实战 链家网站爬取 实习僧网站爬 ...
- Python爬虫三:抓取链家已成交二手房信息(58W数据)
环境:Windows7+python3.6+Pycharm2017 目标:抓取链家北京地区已成交二手房信息(无需登录),如下图,户型.朝向.成交时间价格等,保存到csv.最后一共抓取约58W数据,程序 ...
- php爬取房源,Python 爬虫 链家二手房(自行输入城市爬取)
因同事想在沈阳买房,对比分析沈阳各区的房价,让我帮忙爬取一下链家网相关数据,然后打 算记下笔记 用于总结学到的东西&用到的东西. 一.爬虫需要会什么? 学习东西 首先你要知道它是干嘛的.爬虫 ...
- python爬虫requests源码链家_Python 爬虫 链家二手房(自行输入城市爬取)
因同事想在沈阳买房,对比分析沈阳各区的房价,让我帮忙爬取一下链家网相关数据,然后打 算记下笔记 用于总结学到的东西&用到的东西. 一.爬虫需要会什么? 学习东西 首先你要知道它是干嘛的.爬虫 ...
最新文章
- Matlab实现图像边缘检测
- Valgrind使用【转】
- python怎样使用_Python如何合理使用assert(新手必读)
- G6 图可视化引擎——入门教程——元素及其配置
- STL_算法_区间的比較(equal、mismatch、 lexicographical_compare)
- TensorFlow书籍
- 离散数学知识点及错题集合 第七章
- 华为网络技术大赛模拟题目
- 大学计算机计算思维期末试题及答案,大学计算机计算思维导论期末考试
- linux怎么下载ftp文件夹,命令行 - 如何在Linux上通过FTP递归下载文件夹
- tensorflow ckpt模型转saved_model格式并进行模型预测
- 怎么利用企业微信营销 企业微信如何营销 企业微信如何维护好友 企业微信如何开通
- nginx防止CDN大量回源
- 用C语言打印平行四边形
- IE浏览器如何实现断点续传
- 微信公众号页面中监听手机“返回”,并回到公众号里
- 微信小程序 保存base64图片和普通图片
- 百家号自媒体的文章在哪个时间段发文效果比较好?
- js excel 在线插件 合并单元格 设置单元格样式 编辑工具
- Zotero 和它的朋友们: 一个文献阅读生态
热门文章
- MATLAB定义大气湍流模型退化函数,基于改进的Kolmogorov谱湍流模型的图像退化研究...
- odoo第二天,请假单,权限第一天
- 知星社:学会了什么?
- 计算机基础数据表示实验,2018大学计算机基础上机实验报告
- ODL:OpenDayLight子项目之MD-SAL
- 省协湖北中心 计算机科学与技术,国家知识产权局专利局专利审查协作湖北中心...
- 计算机网络学习笔记(一)应用层、传输层和网络层数据平面
- 又一家著名游戏公司在西雅图开分店了
- 直播app源代码,手机屏幕截取并保存到手机相册
- 《管理学》第四章 计划