1、第 期(总第 期)年 月山西电子技术网络技术收稿日期:基金项目:第二批国家级职业教育教师教学创新团队课题研究项目和双高专业群“证书”制度探索与实践研究课题()作者简介:李 红()女山西临汾人助教工学硕士研究方向:大数据技术文章编号:()基于 的太原二手房爬虫的设计与实现李 红(山西职业技术学院山西 太原)摘 要:随着经济的快速发展人们买房获取数据信息越来越便利但网络的海量数据也给人们快速摘取有用信息带来了很大的困难同样太原二手房数据量也很庞大 利用 框架快速高效的爬取太原链家二手房数据并对数据完成处理和存储为买房人群提供有用信息数据参考关键词:框架太原二手房数据爬虫中图分类号:文献标识码:()
2、:.:引言近年来随着国家政府对房地产政策的宏观调控人们对于买房的热情依旧很高涨相较于新房很多家庭倾向于购买二手房二手房有即买即住小区配套成熟地理位置优越等优点 但随着大数据的发展网络数据鱼龙混杂且越来越多网络爬虫技术就可以帮助用户挖掘数据快速爬取出所需数据并完成处理降低用户人工查找成本 框架 框架是使用 语言开发的一个开源的爬虫框架 它也提供了多种类型爬虫的基类具有快速、高效的抓取网站数据等功能可用于爬虫开发、自动化测试等应用领域 框架由调度器、引擎、爬虫、管道、下载器、中间件和下载中间件几大组件组成 框架架构图如图图 框架架构图 框架主要工作流程是:)引擎向 请求第一个要爬取的)引擎把 构造
3、成 对象传递给调度器)调度器接着把要爬取的下一个 链接返回给引擎)引擎通过下载中间件将从调度器接收到的 传递给下载器)下载器将获取到的网站页面响应对象 通过下载中间件返回给引擎)引擎通过爬虫中间件将从下载器中接收到的响应对象传递给)将 进行解析并进行爬取将爬取到的 和需要下一步跟进的请求通过爬虫中间件发送给引擎)引擎将接收的 发送给 将新的请求发送给调度器)重复第二步直到调度器队列中没有 后引擎关闭网站 爬虫的设计与实现.爬虫总体设计本文对太原二手房数据进行爬取主要对小区名称、商圈名称、户型、面积、朝向、装修情况、楼层、建筑类型、关注度、发布时间、总价、单价以及房屋详情链接等信息进行爬取 本文
4、设计的 爬虫分为数据爬取模块和数据存储模块 其中数据爬取模块也就是整体的爬虫模块主要功能是通过创建 工程项目、确定网页爬取目标、创建爬虫、执行爬虫这几步操作完成对太原二手房数据的抓取数据存储模块主要功能是对抓取到的太原二手房数据进行存储将数据存储为 格式文件在本地保存.爬虫的实现.新建 工程项目使用 框架创建爬虫第一步是新建一个 工程项目 打开终端通过命令:进入到存放项目的 文件夹中接着输入命令:其中 是项目名称 命令运行成功后项目名称文件夹下会自动创建若干初始目录和文件其中.文件是项目配置文件存储的是项目配置相关信息 文件夹存储的是 爬虫文件下面的.文件就是自定义的爬虫文件.文件是实体文件定
5、义了 数据结构.文件是中间件文件用来定义中间件.文件是管道文件用来保存数据.文件是设置文件用于存储项目的全局设置信息.确定网页爬取目标本项目要爬取的太原二手房网址为:/./要爬取的数据有小区名称、户型、总价等 通过谷歌浏览器打开该网址进入到浏览器开发模式中分析网页结构确定每一个爬取数据的 路径 通过分析发现所有的二手房数据都在/路径下 接下来对要获取的每一个二手房的属性进行位置确定总名称、房屋详情链接属性的 路径分别是./()和./小区名称、商圈名称的 路径分别是./()和./()房屋户型等 个详情属性均在第 个 下的 中后期需要在爬虫代码中对其进行数据处理和分割 路径是./()房屋关注度、发
6、布时间两个属性都在第 个 下的 中后期同样需要进行数据处理和分割 路径是./()房屋总价和单价的 路径分别是./()和./().制作爬虫制作爬虫主要由创建一个爬虫、修改 文件设置配置信息、数据建模、编写爬虫代码这四步组成 第一步在终端命令行中输入命令:“.”第二步打开.文件对所需设置进行修改:)设置 /.是用户代理用来伪装请求载体身份设置后可以模拟人为访问网站的行为防止网站启用反爬虫)关闭 协议 关闭后 启动不会访问该协议文件)启用管道 .:包含使用的项目管道和优先级数值 优先级数值在 以内数值越小优先级越高 第三步打开.文件在()类中对所有获取的属性编写代码同 .()这样可以为后期抓取提供保
7、护机制 第四步打开.文件编写爬虫代码代码分为 部分:)定义爬虫名称、爬虫域和初始 )提取爬取数据在()函数中撰写爬虫逻辑代码首先根据 对象对数据列表进行 关键代码是 .(总路径)然后通过 循环遍历页面中的二手房数据列表 获取每一个二手房数据中的所有属性通过 ()实例化出 对象根据之前确定 路径依次将数据放入 对象中关键代码为 变量名.(属性路径).()()是返回列表中的第一个字符串房屋详情的 个属性值在一个/()中需要通过调用()方法去除空格调用 方法将其山 西 电 子 技 术 年第 期 年第 期李 红:基于 的太原二手房爬虫的设计与实现以 为界限分割成 个字符串存储在列表中房屋关注度、发布时
8、间两个属性处理方法同上最后通过 返回数据)通过 循环遍历下一页数据分析发现下一页 在初始 后拼接 页数即可生成下一页 代码为 ./.()太原二手房共有 页数据将循环条件设置为()最后通过.(.)代码构建请求对象将新构建请求返回给引擎开始循环爬取下一页数据.执行爬虫打开终端进入到项目文件夹下通过执行 命令完成对爬虫的执行操作.存储爬取数据本文将数据永久性存储在 文件中可以在利用管道 保存数据导入 包后定义一个管道类接着在构造函数中通过 内置函数以只写 的 方 式 创 建/打 开 文 件 重 写 管 道 类 中 的 方法将 数据类型转换为字典然后对数据序列化调用 函数将数据写入文件中写入完成后 最
9、后在析构函数中关闭文件 再次执行爬虫在 就会生成一个 文件数据永久化存储部分结果如图 图 文件 结束语在大数据时代人工摘取有用信息效率越来越低下网络爬虫技术提供了很好的解决方案 本文运用 爬虫框架完成了对太原二手房数据的爬取和处理最终将数据永久化存储在 文件中为用户提供了明确的二手房数据信息减少了用户摘取有用目标数据的时间 在今后的研究中可以继续改进爬虫设计更好的为用户提供房屋数据参考(上接第 页)网络拓扑和协议设计网络拓扑和协议设计:数字通信系统的核心是网络拓扑和协议设计 网络拓扑可以通过对网络中的节点和路由进行布局和设计实现数据的高效传输和转发而协议设计则是根据通信的需求和特点制定通信的标
10、准和规范以实现数据的可靠传输和安全管理.网络拓扑网络拓扑指的是通信系统的网络结构包括哪些设备、线路和网络拓扑结构的组合方式 常见的网络拓扑结构有总线型、环型、星型、树型和网状型等 总线型网络拓扑最简单只有一个节点和一条传输线环型网络拓扑最少需要两个节点而且传输线互相连接星型网络拓扑由多个节点组成其中每个节点都是中心节点树型网络拓扑由一个主树和许多子树组成网状型网络拓扑由多个节点通过边连接而成.协议设计协议设计是通信系统的核心决定了数据传输的内容、格式、速度和可靠性等指标 常见的通信协议有/、等/协议是网络通信的基础用于规定数据通信的基本流程和控制措施 协议是无连接的、不可靠的数据传输协议常用于实时数据传输 协议是 协议的扩展增加了用于路由和寻址的功能 协议是基于()的远程控制协议提供了对虚拟机的实时监控和管理等功能网络拓扑和协议设计是通信系统中两个重要方面相互联系、相互影响 选择合适的网络拓扑结构可以提高数据传输速度和可靠性设计合适的通信协议可以确保数据传输的质量和安全性 结论综上所述数字电子技术在通信网络系统中的应用非常广泛可以提高信号的质量和可靠性实现高效的数据通信和语音通信参考文献陈中祥熊莹霞.基于 的 和 数字滤波器的设计实现.智能计算机与应用():.张宝.模拟电子技术与数字电子技术的优劣及应用研究.科学技术创新():.