用python爬取租房网站信息的代码


Posted in Python onDecember 14, 2018

自己在刚学习python时写的,中途遇到很多问题,查了很多资料,下面就是我爬取租房信息的代码:

链家的房租网站
两个导入的包
1.requests 用来过去网页内容 
2.BeautifulSoup
import time
import pymssql
import requests
from bs4 import BeautifulSoup
#  https://wh.lianjia.com/zufang/
#获取url中下面的内容
def get_page(url):
  responce = requests.get(url)
  soup = BeautifulSoup(responce.text,'lxml')
  return soup
#封装成函数,作用是获取列表下的所有租房页面的链接,返回一个链接列表
def get_links(url):
  responce = requests.get(url)
  soup = BeautifulSoup(responce.text,'lxml')
  link_div = soup.find_all('div',class_ = 'pic-panel')
  links = [div.a.get('href') for div in link_div]
  return links
#收集一个房子的信息
def get_house_info(house_url):
  soup = get_page(house_url)
  price = soup.find('span',class_='total').text
  unit = soup.find('span',class_= 'unit').text[1:-1]
  area = soup.find('p', class_ = 'lf').text
  house_info= soup.find_all('p',class_ = 'lf')
  area = house_info[0].text[3:] #字符串切片工具
  layout = house_info[1].text[5:]
  info={
    '价格':price,
    '单位':unit,
    '面积':area,
    '户型':layout
    }
  return info
#链接数据库
server="192.168.xx.xx"  #换成自己的服务器信息
user="liujiepeng"
password="xxxxx"    #自己的数据库用户名和密码
conn=pymssql.connect(server,user,password,database="house")
def insert(conn,house):
  #sql_values = values.format(house['价格'],house['单位'],house['面积'],
                #house['户型'])
  sql = "insert into [house].dbo.lianjia(price,unit,area,layout)values('%s','%s','%s','%s')"%(house["价格"],house["单位"],house["面积"],house["户型"])
  print(sql)
  cursor = conn.cursor() #游标,开拓新的窗口
  #cursor1 = conn.cursor()
  cursor.execute(sql) #执行sql语句
  conn.commit() #提交 ,更新sql 语句
links = get_links('https://wh.lianjia.com/zufang/')
count = 1
for link in links:
  #time.sleep(2)
  print('获取一个数据成功')
  house = get_house_info(link)
  insert(conn,house)
  print("第%s个数据,存入数据库成功!"%(count))
  count = count+1
  #print(house["价格"],end='\r')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
使用setup.py安装python包和卸载python包的方法
Nov 27 Python
Python中的作用域规则详解
Jan 30 Python
python中map()与zip()操作方法
Feb 27 Python
深入理解NumPy简明教程---数组1
Dec 17 Python
python linecache 处理固定格式文本数据的方法
Jan 08 Python
Python实现的序列化和反序列化二叉树算法示例
Mar 02 Python
Django处理Ajax发送的Get请求代码详解
Jul 29 Python
python实现几种归一化方法(Normalization Method)
Jul 31 Python
Python3 shelve对象持久存储原理详解
Mar 23 Python
Django model.py表单设置默认值允许为空的操作
May 19 Python
Python常用断言函数实例汇总
Nov 30 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
Feb 02 Python
从运行效率与开发效率比较Python和C++
Dec 14 #Python
对python产生随机的二维数组实例详解
Dec 13 #Python
详解Python with/as使用说明
Dec 13 #Python
在python中以相同顺序shuffle两个list的方法
Dec 13 #Python
对python GUI实现完美进度条的示例详解
Dec 13 #Python
PyTorch 1.0 正式版已经发布了
Dec 13 #Python
修改python plot折线图的坐标轴刻度方法
Dec 13 #Python
You might like
又一个php 分页类实现代码
2009/12/03 PHP
关于PHP 如何用 curl 读取 HTTP chunked 数据
2016/02/26 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
面向对象继承实例(a如何继承b问题)(自写)
2013/07/01 Javascript
JS中判断null、undefined与NaN的方法
2014/03/26 Javascript
js使用心得分享
2015/01/13 Javascript
JavaScript中constructor()方法的使用简介
2015/06/05 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
每天一篇javascript学习小结(属性定义方法)
2015/11/19 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件包装
2015/11/20 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
基于vue的fullpage.js单页滚动插件
2017/03/20 Javascript
使用Node.js实现简易MVC框架的方法
2017/08/07 Javascript
vue子路由跳转实现tab选项卡
2019/07/24 Javascript
使用Element的InfiniteScroll 无限滚动组件报错的解决
2020/07/27 Javascript
Python和C/C++交互的几种方法总结
2017/05/11 Python
python通过百度地图API获取某地址的经纬度详解
2018/01/28 Python
Python多线程原理与用法详解
2018/08/20 Python
python监测当前联网状态并连接的实例
2018/12/18 Python
对Python+opencv将图片生成视频的实例详解
2019/01/08 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
2020/02/18 Python
python 实现socket服务端并发的四种方式
2020/12/14 Python
Myprotein加拿大官网:欧洲第一的运动营养品牌
2018/01/06 全球购物
Lookfantastic葡萄牙官方网站:欧洲第一大化妆品零售商
2018/03/17 全球购物
德国传统玻璃制造商:Cristalica
2018/04/23 全球购物
Kathmandu新西兰官网:新西兰户外运动品牌
2019/07/27 全球购物
急诊科护士自我鉴定
2013/10/14 职场文书
电气自动化专业职业规划范文
2014/02/16 职场文书
现场施工员岗位职责
2014/03/10 职场文书
爱心活动计划书
2014/04/26 职场文书
应用心理学专业求职信
2014/08/04 职场文书
解除同居协议书
2015/01/29 职场文书
2016年三严三实党课学习心得体会
2016/01/06 职场文书
i5-10400f处理相当于i7多少水平
2022/04/19 数码科技