当前位置: 首页 > news >正文

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

自己在刚学习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或者有兴趣学习python的伙伴可以我的Python官方群聊小白到大佬全套学习视频免费领取

相关文章:

  • python中if in是什么意思_if语句中“ in”的使用和含义?
  • 利用python爬虫电影分析_python 爬虫分析30年香港电影
  • 汇编 无法修改显存中的内容_汇编语言
  • sql 去重求和_SQL知识大全(二):SQL的基础知识你都掌握了吗?
  • python 希尔伯特变换_Python中HHT(希尔伯特-黄变换)以及其在EEG数据处理中的应用...
  • 广义表head tail 运算_数据结构习题解答:多维数组和广义表 | 选择题
  • python求中位数的怎么编写_python计算分位数方法
  • 在anaconda安装python命令_Anaconda入门:安装及包与环境的管理(conda命令)
  • python创建提示用户输入查询条件_pythone-2:用户登录并根据条件查询
  • crontab类型的任务python_Linux 上使用 crontab 设置定时任务及运行 Python 代码不执行的解决方案...
  • python epoll多路复用技术_python 网络编程 IO多路复用之epoll
  • python的数字运算_Python中数字的相关运算:数学运算及函数运算
  • python的开发环境有哪些特点_Python集成开发环境有哪些
  • 导出数据表 跳过autoincrease_aTimeLogger按周导出的数据报表
  • python基础网易_python零基础入门命令方式汇总大全,快速恶补你的Python基础
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • 【css3】浏览器内核及其兼容性
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • canvas绘制圆角头像
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  •  D - 粉碎叛乱F - 其他起义
  • docker-consul
  • HTML-表单
  • idea + plantuml 画流程图
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • PermissionScope Swift4 兼容问题
  • Puppeteer:浏览器控制器
  • python 学习笔记 - Queue Pipes,进程间通讯
  • spring-boot List转Page
  • vuex 学习笔记 01
  • 回流、重绘及其优化
  • 基于Android乐音识别(2)
  • 聚类分析——Kmeans
  • 码农张的Bug人生 - 初来乍到
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 悄悄地说一个bug
  • 什么是Javascript函数节流?
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • Java性能优化之JVM GC(垃圾回收机制)
  • UI设计初学者应该如何入门?
  • 从如何停掉 Promise 链说起
  • #考研#计算机文化知识1(局域网及网络互联)
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (2)nginx 安装、启停
  • (LeetCode C++)盛最多水的容器
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (二)丶RabbitMQ的六大核心
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (黑马C++)L06 重载与继承
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转)使用VMware vSphere标准交换机设置网络连接