python+selenium爬取链家网房源信息并保存至csv
抓取的信息有:房源’, ‘详细信息’, ‘价格’,‘楼层’, '有无电梯

import csv
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWaitdef write2txt(line):with open('租房.txt', 'a', encoding='utf-8') as f:f.write(line + '\n')def write_to_csv(row_data):with open('data.csv', 'a+', newline="", encoding='utf-8') as f:csv_add = csv.writer(f)csv_add.writerow(row_data)def process():driver_path = r"D:\chromedriver.exe"browser = webdriver.Chrome(executable_path=driver_path)browser.implicitly_wait(1)write_to_csv(['房源', '详细信息', '价格','楼层', '有无电梯'])for page in range(1, 14):if page == 1:url = 'https://sh.lianjia.com/zufang/rs%E6%9D%BE%E6%B1%9F%E5%A4%A7%E5%AD%A6%E5%9F%8E/#contentList'else:url = 'https://sh.lianjia.com/zufang/pg' + str(page) +'rs松江大学城/#contentList'browser.get(url)browser.maximize_window()wait = WebDriverWait(browser, 3)div = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, 'div.content__list')))div_list = div.find_elements_by_tag_name('div')print(len(div_list))list_page_handle = browser.current_window_handlefor n, div in enumerate(div_list):detail_p_list = div.find_elements_by_css_selector('p')print(n+1)#titletitle_a = detail_p_list[0].find_element_by_tag_name('a')title = title_a.textprint('房源:',title)a_list = detail_p_list[1].find_elements_by_tag_name('a')detail_text = a_list[0].textdetail_text += a_list[1].textdetail_text += a_list[2].textdetail_text += detail_p_list[1].textprint('详细信息:',detail_text)#priceprice_span = div.find_element_by_css_selector('span > em').textprint('价格:',price_span)#下拉滚动条js = 'window.scrollTo(0, + ' + str((n+1) * 1000) + ')'browser.execute_script(js)title_a.click()# 获取楼层和电梯信息time.sleep(1)all_handles = browser.window_handlesbrowser.switch_to.window(all_handles[-1])li_list = browser.find_elements_by_css_selector('div.content__article__info > ul > li')louceng = li_list[7].textdianti = li_list[8].textprint(louceng + dianti)write2txt(title + ',' + detail_text + ',' + price_span + ',' + louceng + ',' + dianti)raw_data = [title, detail_text, price_span, louceng, dianti]write_to_csv(raw_data)detail_page_handle = browser.current_window_handlebrowser.close()browser.switch_to.window(list_page_handle)if __name__ == '__main__':s = time.time()process()e = time.time()print('用时:'+ str(e-s))

欢迎关注我的微信公众号~

python+selenium爬取链家网房源信息并保存至csv相关推荐

  1. python爬取南京市房价_Python的scrapy之爬取链家网房价信息并保存到本地

    因为有在北京租房的打算,于是上网浏览了一下链家网站的房价,想将他们爬取下来,并保存到本地. 先看链家网的源码..房价信息 都保存在 ul 下的li 里面 ​ 爬虫结构: ​ 其中封装了一个数据库处理模 ...

  2. python爬取链家房价消息_Python的scrapy之爬取链家网房价信息并保存到本地

    因为有在北京租房的打算,于是上网浏览了一下链家网站的房价,想将他们爬取下来,并保存到本地. 先看链家网的源码..房价信息 都保存在 ul 下的li 里面 ​ 爬虫结构: ​ 其中封装了一个数据库处理模 ...

  3. python爬虫爬取链家网房价信息

    打开链家网页:https://sh.lianjia.com/zufang/  :用F12以页面中元素进行检查 <a target="_blank" href="/z ...

  4. 如何高效地爬取链家的房源信息(四)

    "Python实现的链家网站的爬虫第四部分,最后一部分." 本系列文将以链家南京站为例,使用Python实现链家二手房源信息的爬虫,将数据爬取,并存入数据库中,以便使用. 本系列第 ...

  5. 如何高效地爬取链家的房源信息(三)

    "Python实现的链家网站的爬虫第三部分." 本系列文将以链家南京站为例,使用Python实现链家二手房源信息的爬虫,将数据爬取,并存入数据库中,以便使用. 本系列第一部分为基础 ...

  6. 如何高效地爬取链家的房源信息(二)

    "Python实现的链家网站的爬虫第二部分." 本系列文将以链家南京站为例,使用Python实现链家二手房源信息的爬虫,将数据爬取,并存入数据库中,以便使用. 本系列第一部分: 如 ...

  7. python 爬虫实践 (爬取链家成交房源信息和价格)

    简单介绍 pi: 简单介绍下,我们需要用到的技术,python 版本是用的pyhon3,系统环境是linux,开发工具是vscode:工具包:request 爬取页面数据,然后redis 实现数据缓存 ...

  8. 如何爬取链家网页房源信息

    由于个人安装的Python版本是2.7的,因此此后的相关代码也是该版本. 爬取网页所有信息  利用urllib2包来抓取网页的信息,先介绍下urllib2包的urlopen函数.  urlopen:将 ...

  9. 一、如何爬取链家网页房源信息

    由于个人安装的Python版本是2.7的,因此此后的相关代码也是该版本. 爬取网页所有信息 利用urllib2包来抓取网页的信息,先介绍下urllib2包的urlopen函数. urlopen:将网页 ...

最新文章

  1. Haskell 差点儿无痛苦上手指南
  2. 在树莓派中开发 opencv 大型程序
  3. spark-submit参数说明--standalone
  4. codeforces316E3
  5. WPF:WPF显示PDF文档 之 编译 MoonPdfLib库
  6. tuple parameter unpacking is not supported in python3
  7. 【论文阅读整理】A Survey on Device-free Indoor Localization and Tracking in the Multi-resident Environment
  8. 解决spark on yarn报错:File /tmp/hadoop-root/nm-local-dir/filecache does not exist
  9. e文件怎么打开_win10电脑怎么打开ai文件
  10. 借助桶排序思想完成的一道题
  11. 信息学奥赛一本通(1060:均值)
  12. java描述常用的集合类_Java常用的集合类
  13. Linux系统下安装Mysql数据库
  14. 哈工大材力上机 matlab,材力上机Matlab哈工大
  15. JDY-10M组网 蓝牙MESH组网
  16. 【计算机组成原理】寄存器的本质——锁存器
  17. 数据探索(数据特征分析)④—Python分布分析、对比分析、统计量分析、期性分析、贡献度分析、相关性分析
  18. Java实现生成并下载Excel文件
  19. B2C网关支付方案介绍
  20. 2020ccf大学生计算机系统,云南大学学生获得2019CCF大学生计算机系统与程序设计竞赛西...

热门文章

  1. 怎么不回到桌面打开计算机d盘,d盘不见了,详细教您电脑d盘不见了怎么解决
  2. 高通手机型号、开机logo、默认语言设置等小修改
  3. 中文汉字按拼音排序并按字母分类(uniapp indexedList索引列表格式匹配)
  4. 物联网真正意义是什么?目前物联网相关产业有哪些?
  5. html5 div拖拽插件,div拖拽插件——JQ.MoveBox.js(自制JQ插件)
  6. c语言中后缀字母如 d h b l i,10 C语言中常量的表示.ppt
  7. js键盘事件中的键码对照表
  8. 新一代虚拟驾驶仿真平台
  9. puzzle(0333)色块拼图、物换星移、移星掠形
  10. 企业如何通过会员积分营销留住客户?