爬取安居客上住房信息的简单爬虫 ,并存储为表格文件

2023-11-24 20:20

本文主要是介绍爬取安居客上住房信息的简单爬虫 ,并存储为表格文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

代码如下,有注释进行介绍:

#本爬虫仅用于学习,纯属爱好,虽然本爬虫很简单,但还是请大家不要滥用
#python3, Firefox浏览器import requests
from bs4 import BeautifulSoup
import time
import csv# 定制请求头,请求头在浏览器中查看,具体方法见附录一
headers = {'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0',
}# 将要访问的网址
link = 'https://beijing.anjuke.com/sale/'
# 访问该网站
r = requests.get(link, headers=headers, timeout=100)# 使用BeautifulSoup提取html中的内容
# BeautifulSoup 中文官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/#id37
soup = BeautifulSoup(r.text, 'lxml')
house_list = soup.find_all('li', class_="list-item")# 将爬取的内容写入 test.csv中,编码格式为 'UTF-8'
with open('test.csv', 'a+', encoding='UTF-8', newline='') as csvfile:w = csv.writer(csvfile)for house in house_list:temp = []name = house.find('div', class_="house-title").a.text.strip()price = house.find('span', class_='price-det').text.strip()price_area = house.find('span', class_='unit-price').text.strip()no_room = house.find('div', class_='details-item').span.textarea = house.find('div', class_='details-item').contents[3].textfloor = house.find('div', class_='details-item').contents[5].textyear = house.find('div', class_='details-item').contents[7].textbroker = house.find('span', class_='brokername').textbroker = broker[1:]address = house.find('span', class_='comm-address').text.strip()address = address.replace('\xa0\xa0\n                  ', ' ')tag_list = house.find_all('span', class_='item-tags')tags = [i.text for i in tag_list]temp = [name, price, price_area, no_room, area,floor, year, broker, address, tags]print(temp)# 写入表格(test.csv)w.writerow(temp)

附录一,请求头的查找:

打开浏览器到你要爬取的网站 -->  右键选择查看元素 --> 点击网络(如图一)-->

重新载入当前页面 -- > 右键点击开发者工具栏--> 点击原始头(如图二)就可以看到请求头

图一

图二

 

参考文献:python网络爬虫从入门到实践 唐松等 【2017.9】

这篇关于爬取安居客上住房信息的简单爬虫 ,并存储为表格文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/422513

相关文章

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要