CN108182496A - 一种城市互联网开放数据获取处理分析方法 - Google Patents
一种城市互联网开放数据获取处理分析方法 Download PDFInfo
- Publication number
- CN108182496A CN108182496A CN201810001833.8A CN201810001833A CN108182496A CN 108182496 A CN108182496 A CN 108182496A CN 201810001833 A CN201810001833 A CN 201810001833A CN 108182496 A CN108182496 A CN 108182496A
- Authority
- CN
- China
- Prior art keywords
- data
- website
- page
- address
- internet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000004458 analytical method Methods 0.000 title claims abstract description 46
- 230000008569 process Effects 0.000 title claims abstract description 33
- 238000000605 extraction Methods 0.000 claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 18
- 238000012805 post-processing Methods 0.000 claims abstract description 5
- 238000007619 statistical method Methods 0.000 claims abstract description 4
- 238000013528 artificial neural network Methods 0.000 claims description 41
- 230000006870 function Effects 0.000 claims description 21
- 238000013439 planning Methods 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 15
- 239000000284 extract Substances 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 12
- 239000013598 vector Substances 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 6
- 238000013515 script Methods 0.000 claims description 5
- 241000270322 Lepidosauria Species 0.000 claims description 4
- 230000003667 anti-reflective effect Effects 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 4
- 238000010801 machine learning Methods 0.000 claims description 4
- 238000011160 research Methods 0.000 claims description 4
- 241001269238 Data Species 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 3
- 239000000470 constituent Substances 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 230000000007 visual effect Effects 0.000 claims description 3
- 238000000151 deposition Methods 0.000 claims 1
- 210000004218 nerve net Anatomy 0.000 claims 1
- 239000010410 layer Substances 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Finance (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Game Theory and Decision Science (AREA)
- Databases & Information Systems (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种城市互联网开放数据获取处理分析方法,包括步骤:1)城市互联网开放数据目录页处理;2)基于网站模板的网站内容页关键价值信息提取;3)信息后处理及分析。本发明根据互联网网站多样性的特点提出基于模板提取具有分析价值的数据,并同时进行简单的统计分析,提升了系统能够适用的范围,从而克服了人工手动获取城市互联网开放数据的低效率问题,有效简化城市互联网开放数据获取与分析的流程,为城市互联网开放数据获取提供新的方法,具备良好的扩展性。
Description
技术领域
本发明涉及互联网开放数据处理分析的技术领域,尤其是指一种城市互联网开放数据获取处理分析方法。
背景技术
互联网是各种价值数据流传的通道,互联网利用电子通信技术的降低了人们互相沟通的成本。随着信息电子技术的蓬勃发展,出现了以58同城、大众点评、携程、政府公示网站等互联网结合办公、生活应用场景的互联网应用。人们越来越依靠此类网站进行生活服务的消费与评价与了解城市的规划,并由于使用者的逐渐增多,这类网站越来越代表城市中人类的活动信息,即这类网站中包含对城市规划分析、研究具有价值的数据。对于互联网上分布的海量开放数据,如何将这些数据结合研究者的具体实际应用分析是一件困难的事情。现代搜索引擎在关键词描述准确的层次解决人们关于如何找到相关数据的问题,但对于其他垂直行业,仍未有高度自动化地解决数据获取与处理分析的方法出现。如目前的地产公司对城市地块的建设分析普遍采用人工手机数据分类的方法,这类依赖人的过程效率低下,数据在处理过程中易产生错误。
城市互联网开放数据,即互联网上与城市经济、建设、发展、人类活动紧密相关的数据,如地块区域的规划设计公示信息、用户对商铺的评价、旅游线路等。
在特定的行业领域,如城市规划,针对不同分析、研究问题,58同城、政府规划公示网站、大众点评上的区域的建筑信息、商铺信息、租房信息等都从某个角度给出了区域的人文活动、建筑环境、商业分布描述。对于此类信息公布网站,可以注意到,同一网站其网页信息展示结构一般一致。基于此出发,能够实现高层次自动化的城市互联网开放数据获取处理分析方法。
这种高层次自动化的数据获取处理分析方法不仅可用于城市规划研究分析,根据经验可以发现,大部分的信息查询展示类网站都是以目录页与内容页的形式展现,因此该方法亦可迁移应用到其他需要获取与处理互联网开放数据的垂直研究领域。
发明内容
本发明的目的在于克服现有城市规划研究分析中依赖人工手动获取城市互联网开放数据效率低,提出了一种城市互联网开放数据获取处理分析方法,该数据获取处理分析方法考虑了城市规划垂直行业互联网数据分析的特点,如建筑空间位置这一空间信息,克服为具体研究问题每次重复性编写数据抓取脚本并依赖excel等表格软件处理数据,在特定网站其数据展示方式、风格一致的前提下,对该网站网页中的数据进行基于模板方式的提取关键数据,如被拍卖土地的地址信息、商铺的用户评价总量、商铺的平均评分。
为实现上述目的,本发明所提供的技术方案为:一种城市互联网开放数据获取处理分析方法,包括以下步骤:
1)城市互联网开放数据目录页处理
根据使用者给定的特定网站模板文件中定义的初始网站地址发起网络访问,并提供多种对抗防爬虫策略,获得网页html源代码后,依据模板中定义的策略,即目录页提取规则与内容页网址提取规则,将内容页的网络地址传递步骤2)进行处理,继续访问下一目录页,直至处理完该网站的所有目录页;
2)基于网站模板的网站内容页关键价值信息提取
根据步骤1)中获得的内容页网络地址发起网络访问,等待网站返回的内容页html源代码后,依据特定网站模板文件中定义的关键数据提取规则抽取内容页html源代码中的数据,并将数据进行规范化处理,包括单位调整、数据转换,然后将提取并规范化后的数据存入数据库,用于后续分析处理;
3)信息后处理及分析
由系统产生的完成信号出发,从而对获取的数据进行分析及处理工作;若步骤2)中的数据具有地址信息,便利用地图服务提供商,包括高德地图、百度地图,提供的服务进行地址到空间坐标系的转换,并利用神经网络将百度、高德各自的坐标系统转换为WGS-84坐标;最后,对各项数据进行聚类与统计分析,能够获得某区域的建筑类型、经济类型的数据描述,以支持城市规划的决策。
在步骤1)中,首先,解析网站模板信息获得网站模板中定义的对抗反爬虫策略,包括网站登录方式、浏览器头部信息模仿、构造HTTP头部信息——用于与网站服务器交互的一组元信息;解析网开模板信息获取网站模板中的初始互联网地址,通常该地址代表特定网开的第一个目录页,对初始互联网地址结合构造的HTTP头部信息发起网络访问,获得初始目录页中的HTML代码,HTML是一种用于表示网页的结构化编程语言;浏览器通过HTML代码、CSS样式表、JavaScript脚本对网站进行渲染生成界面,其中界面上的各种文本数据均包含在网页的HTML代码中;根据网站模板中定义的Xpath或CSS selector规则提取内容页的互联网地址,若目录页只含一条内容页信息,则将内容页的互联网地址整理为单个互联网地址,若目录页包含多条内容页信息,则讲内容页的互联网地址整理为一个关于内容页的互联网地址的数组;然后将内容页的互联网地址的提取结果发往步骤2)进行内容页信息提取处理;而在步骤1)继续解析下一页目录页的互联网地址;对互联网上生活服务类网站、公示类网站分析能够发现网站的目录页的互联网地址具有一定规则,有些网站在互联网地址中通过参数指定目录页数,而其它一类网站并不具有明显规则,但在网页上提供有下一页的按钮,亦能够分析网页源代码提取该按钮指向的互联网地址;根据下一目录页的互联网地址,发起网络访问,若下一页有效遍重复上述目录页解析过程,否则结束步骤1);步骤1)以独立进程的方式运行,并通过socket方式与步骤2)交互。
在步骤2)中,接收步骤1)发送的内容页的互联网地址数据,若为单一的一个互联网地址,则访问该互联网地址;若为一个互联网地址数组,则以循环的方式访问其中每个互联网地址;在网站返回内容的HTML代码之后,根据网站模板中定义的价值数据提取规则,通过Xpath表达式,或CSS selector定义,提取数据,其中Xpath和CSS selector都能够用于定位HTML代码中结构节点,某节点包含对规划分析具有价值的数据,即能够利用Xpath表达式或CSSselector提取该节点,并提取其中的文本数据;然后,对提取的数据进行规整,经过规整的数据继而发送给步骤3)处理。
在步骤3)中,接收步骤2)中提取的具有分析价值的数据,若数据的地址项不为空,则分别通过高德地图服务或百度地图服务将地址项转换为空间地理坐标;由于百度和高德的地图分别使用各自的坐标体系,与研究工作中使用的WGS-84坐标体系不一致,因此还需将其坐标系转换为标准的WGS-84坐标系;坐标体系的转换本质上是一个函数变换,由于无法获取地理空间坐标系之间的转换函数,但神经网络算法能够在知道输入输出的情况下良好的拟合函数;因此需要构建一个4层的神经网络算法拟合坐标体系的转换过程;神经网络算法是一种机器学习算法,已证明神经网络通过将多层的非线性变换使得能够拟合任何函数;神经网络中任何两层表示为下式;
Xn=WXn-1
式中,Xn-1为输入向量,Xn为输出向量,W为输入层与输出层之间的权值;神经网络采用梯度下降的方式进行训练,训练过程即使神经网络预测的目标坐标与给定的样本坐标一致,误差函数表达为下式;
式中,y为给定的样本标签值,即输入坐标(lat,lng)对应目标WGS-84坐标向量;a为神经网络给出的预测目标坐标向量,该误差函数代表的含义为神经网络的输出与给定目标WGS-84之间的误差,其为一个凸函数,训练神经网络的目的即最小化该函数,即对各层的权值进行W调整,其调整方法表示为下式;
即权值向梯度方向更新,α是一个超参数,需要在训练是手动指定;通过这种方式,能够将神经网络拟合坐标系之间的转换函数;地址转换之后,将对数据按网站模板中定义的存储顺序排列,并存入指定的数据库中;同时,对统计数据,包括用户对商铺的平均服务评价得分、商圈的商铺数量、某区域拍卖土地面积等值进行更新,同时利用坐标信息在地图上绘制商铺或地块的信息进行可视化分析。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明首次将分布式的多进程数据获取与分析方法应用在的城市规划的互联网相关数据获取与分析中,能够智能的应对网站的反抓取策略,并能够根据模板提取感兴趣的价值数据,提升了系统的灵活性,从而克服了人工获取互联网开放数据重复工作的低效率问题。
2、与以往的互联网数据收集方式不同,本发明方法针对特定的垂直行业领域城市规划,分析了数据获取及处理的一般过程并对其进行抽象,总结了基于模板的数据获取与处理分析的方法。有效的提升了数据获取与分析的效率,简化了获取互联网开放数据的工作流程。为垂直领域的互联网数据获取与分析提供了一种新的解决方案。与以往的简单爬虫系统不同,本发明能够对收集的数据进行低层次的统计与分析任务,并具备良好的扩展性。
3、本发明提出的基于机器学习的坐标系统转换,准确率能够达到99.9%。能够满足对于大部分区域的规划分析调查,并且能够自动化的统计各项信息,如人们对特定地区店铺的平均环境、服务评分。并且由于将地址转换为地理空间坐标信息,即可在地图上绘制商铺、地块的分布,利用可视化的方式辅助规划研究。
附图说明
图1为本发明方法的总体流程图。
图2为本发明的城市互联网开放数据目录页处理流程图。
图3为本发明的基于网站模板的网站内容页关键价值信息提取流程图。
图4为本发明的信息后处理及分析流程图。
图5为本发明的神经网络结构图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
如图1所示,本实施例所提供的城市互联网开放数据获取处理分析方法,其具体情况如下:
1)城市互联网开放数据目录页处理
根据使用者给定的特定网站模板文件中定义的初始网站地址发起网络访问,并提供多种对抗防爬虫策略,获得网页html源代码后,依据模板中定义的策略,即目录页提取规则与内容页网址提取规则,将内容页的网络地址传递步骤2)进行处理。继续访问下一目录页,直至处理完该网站的所有目录页。
如图2所示,首先,解析网站模板信息获得网站模板中定义的对抗反爬虫策略,如网站登录方式,浏览器头部信息模仿,构造HTTP头部信息——用于与网站服务器交互的一组元信息;解析网站模板信息获取网站模板中的初始互联网地址,通常该地址代表特定网站的第一个目录页,对初始互联网地址结合构造的HTTP头部信息发起网络访问,获得初始目录页中的HTML代码,HTML是一种用于表示网页的结构化编程语言。浏览器通过HTML代码、CSS样式表、JavaScript脚本对网站进行渲染生成界面,其中界面上的各种文本数据均包含在网页的HTML代码中。根据网站模板中定义的Xpath或CSS selector规则提取内容页的互联网地址,若目录页只含一条内容页信息,则将内容页的互联网地址整理为单个互联网地址,若目录页包含多条内容页信息,则讲内容页的互联网地址整理为一个关于内容页的互联网地址的数组。然后并将内容页的互联网地址的提取结果发往步骤2)进行内容页信息提取处理。步骤1)继续解析下一页目录页的互联网地址。对互联网上生活服务类网站、公示类网站分析可发现网站的目录页的互联网地址具有一定规则,有些网站在互联网地址中通过参数指定目录页数,如“page=10”表示第10页目录页,其他一类网站并不具有明显规则,但在网页上提供了下一页的按钮,亦可分析网页源代码提取该按钮指向的互联网地址。根据下一目录页的互联网地址,发起网络访问,若下一页有效遍重复上述目录页解析过程,否则结束步骤1)。步骤1)以独立进程的方式运行,并通过socket方式与步骤2)交互。步骤1)具体过程如图2所示。
2)基于网站模板的网站内容页关键价值信息提取
根据步骤1)中获得的内容页网络地址发起网络访问,等待网站返回的内容页html源代码后,依据特定网站模板文件中定义的关键数据提取规则抽取内容页html源代码中的数据,并将数据进行规范化处理,如单位调整、数据转换等。然后将提取并规范化后的数据存入数据库,用于后续分析处理。
如图3所示,接收步骤1)发送的内容页的互联网地址数据,若为单一的一个互联网地址,则访问该互联网地址;若为一个互联网地址数组,则以循环的方式访问其中每个互联网地址。在网站返回内容的HTML代码之后,根据网站模板中定义的价值数据提取规则,通过Xpath表达式,或CSS selector定义,提取数据。Xpath和CSS selector都可用于定位HTML代码中结构节点,某节点包含对规划分析具有价值的数据,即可利用Xpath表达式或CSSselector提取该节点,并提取其中的文本数据。然后,对提取的数据进行规整,如10平方米在某些网站用“10㎡”表示,在数据处理过程中,单位统一设置为平方米,并将数字部分提取出来表示成“10”。经过规整的数据继而发送给步骤3)处理。
3)信息后处理及分析
由系统产生的完成信号出发,从而对获取的数据进行分析及处理工作。若步骤2)中的数据具有地址信息,便利用地图服务提供商,如高德地图、百度地图,提供的服务进行地址到空间坐标系的转换,并利用神经网络将百度、高德各自的坐标系统转换为WGS-84坐标(World Geodetic System 1984)。最后,对各项数据进行聚类与统计分析,可获得某区域的建筑类型、经济类型的数据描述,以支持城市规划的决策。
如图4所示,接收步骤2)中提取的具有分析价值的数据,若数据的地址项不为空,则分别通过高德地图服务或百度地图服务将地址项转换为空间地理坐标。由于百度和高德的地图分别使用了各自的坐标体系,与研究工作中使用的WGS-84坐标体系不一致,因此还需将其坐标系转换为标准的WGS-84坐标系。坐标体系的转换本质上是一个函数变换,由于无法获取地理空间坐标系之间的转换函数,但神经网络算法能够在知道输入输出的情况下良好的拟合函数。因此本方法构建一个4层的神经网络算法拟合坐标体系的转换过程,如图5所示。神经网络算法是一种机器学习算法。已证明神经网络通过将多层的非线性变换使得能够拟合任何函数。神经网络中任何两层可表示为下式。
Xn=WXn-1
其中Xn-1为输入向量,Xn为输出向量,W为输入层与输出层之间的权值,其具体表示为图5中两层间的连接。本方法中的神经网络采用梯度下降的方式进行训练,训练过程即使神经网络预测的目标坐标与给定的样本坐标一致,误差函数表达为下式。
其中,y为给定的样本标签值,即输入坐标(lat,lng)对应目标WGS-84坐标向量。a为神经网络给出的预测目标坐标向量,该误差函数代表的含义为神经网络的输出与给定目标WGS-84之间的误差。其为一个凸函数,训练神经网络的目的即最小化该函数,即对各层的权值进行W调整,其调整方法表示为下式。
即权值向梯度方向更新,α是一个超参数,需要在训练是手动指定。通过这种方式,能够将神经网络拟合坐标系之间的转换函数。地址转换之后,将对数据按网站模板中定义的存储顺序排列,并存入指定的数据库中。同时,对统计数据,如用户对商铺的平均服务评价得分、商圈的商铺数量、某区域拍卖土地面积等值进行更新。
在城市互联网开放数据获取处理分析方法,对城市规划需要的互联网开放数据获取过程进行分析,存在许多可以利用计算机算法自动化的过程。将其进行聚合抽象分析,给出基于网站模板的三个步骤的数据获取与处理过程。并且三个步骤分别以进程的方式独自运行,通过网络socket的方式进行通信,因此,本发明的方法可以利用多台计算机进行大规模的数据获取与分析操作。
网站模板用与定义如何从网站的页面中抽取出价值数据的相关规则,其主要分为应对网站的初始目录页的互联网地址、反抓取的策略规则、目录页的提取或生成规则、内容页的价值数据提取规则、数据库表模式定义、信息统计分析规则。
下面我们以获取大众点评网站上广州的商铺信息为例,结合本发明上述方法进行具体说明。
1)定义网站模板
因为Python语言灵活、动态的特性,本方法以Python脚本作为模板,并预定义Site类,通过继承Site类,重写Site类必须的成员属性和方法,即可用于本方法中后续的数据获取与分析。在Site类中需要重写URL属性、Header属性、Cookies保存方法、IndexPage方法、ContentPage方法、DB方法。其中URL属性定义数据获取的初始互联网地址;Header属性定义HTTP的头部信息,用于模仿浏览器行为;IndexPage方法需要定义目录页生成或提取规则及内容页互联网地址提取规则;ContentPage方法定义内容页价值数据提取规则;DB方法定义数据库表模式及用何种数据库进行存储。在对大众点评广州的商铺获取中,定义“https://www.dianping.com/search/category/4/0”为初始URL地址;设置HTTP头部信息中的“User-Agent”为“Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/61.0.3163.100Safari/537.36”以模仿chrome浏览器访问对抗反抓取;对于大众点评网站在IndexPage中设置下一目录页的CSS selector提取规则为“a[class="next"][title="下一页"]”;内容页互联网地址的CSS selector提取规则为“div.shop-all-list>ul>li>div.txt>div.tit>a”;在内容页中需要提取点评数量、均价、地址、环境、服务等数据,分别设置不同数据的CSS selector选择器规则,并提取其中的文本数据。
2)进行数据抓取与分析
本方法的三个步骤依次相关,在实现上将三个步骤分别做成不断循环等待任务的模式,通过网络socket进行通信,由此可以将不同步骤分布到多台计算机上进行,并且每个步骤同时对多个网站进行操作,由此能够快速的获取大量的数据。对于步骤1),其任务为解析大众点评网站模板中的URL属性并使用模板中的IndexPage方法,将提取的内容页数据发往步骤2),接着在IndexPage中访问下一目录页,不断重复此过程,直到访问完所有目录页。
步骤2)中解析大众点评广州站的网站模板的ContentPage方法,利用ContentPage方法执行数据提取任务,在ContentPage方法中定义价值数据的CSS selector选择器规则,并提取价值数据对应的HTML元素节点,对节点中的文本进行进一步处理,洗净数据。传递给步骤3)。
步骤3)接收到数据后,对数据进行解析,将地址项中的地址描述通过高德地图服务解析为高德地图坐标,在通过训练后的神经网络算法转换为WGS84坐标,可用于标准地图上进行绘制可视化。同时进一步整理数据的格式,使其与大众点评的数据库中表定义一致,存入数据库,在本实施中使用的是mysql开源数据库进行数据存储。
3)训练神经网络
在本实施中,构建两个4层的神经网络,如图5所示,其中两个神经网络的输入分别为百度坐标、高德坐标,输出均为WGS-84坐标,由于百度与高德的地图服务均提供了WGS84坐标到其各自坐标的转换方法,并无提供反向转换方法,因此可以用一批WGS-84坐标转换为百度坐标、高德坐标生成训练神经网络的样本数据。
然后,将一一对应的百度坐标(高德坐标)与WGS-84坐标分别作为本实施中使用的两个神经网络算法的输入与目标,利用梯度下降的方法优化前述的损失函数。本实施的4层网络具体结构为,输入层2个节点分别对应百度或高德的lat、lng坐标数据,第一层隐藏层100个节点,第二层隐藏层50个节点,2个输出节点分别对应WGS-84坐标的lat、lng坐标数据。经过1000次训练后,其在测试数据中的准确率达到99.9%,能够用于地图中的可视化分析。
总之,本发明提出的城市互联网开放数据获取处理分析方法利用模板的方式相较于手工、或简单的爬虫方式收集城市互联网开放数据的效率,并且提供了数据处理与分析的功能,又具有良好的扩展适应性,值得推广。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (4)
1.一种城市互联网开放数据获取处理分析方法,其特征在于,包括以下步骤:
1)城市互联网开放数据目录页处理
根据使用者给定的特定网站模板文件中定义的初始网站地址发起网络访问,并提供多种对抗防爬虫策略,获得网页html源代码后,依据模板中定义的策略,即目录页提取规则与内容页网址提取规则,将内容页的网络地址传递步骤2)进行处理,继续访问下一目录页,直至处理完该网站的所有目录页;
2)基于网站模板的网站内容页关键价值信息提取
根据步骤1)中获得的内容页网络地址发起网络访问,等待网站返回的内容页html源代码后,依据特定网站模板文件中定义的关键数据提取规则抽取内容页html源代码中的数据,并将数据进行规范化处理,包括单位调整、数据转换,然后将提取并规范化后的数据存入数据库,用于后续分析处理;
3)信息后处理及分析
由系统产生的完成信号出发,从而对获取的数据进行分析及处理工作;若步骤2)中的数据具有地址信息,便利用地图服务提供商,包括高德地图、百度地图,提供的服务进行地址到空间坐标系的转换,并利用神经网络将百度、高德各自的坐标系统转换为WGS-84坐标;最后,对各项数据进行聚类与统计分析,能够获得某区域的建筑类型、经济类型的数据描述,以支持城市规划的决策。
2.根据权利要求1所述的一种城市互联网开放数据获取处理分析方法,其特征在于:在步骤1)中,首先,解析网站模板信息获得网站模板中定义的对抗反爬虫策略,包括网站登录方式、浏览器头部信息模仿、构造HTTP头部信息——用于与网站服务器交互的一组元信息;解析网开模板信息获取网站模板中的初始互联网地址,通常该地址代表特定网开的第一个目录页,对初始互联网地址结合构造的HTTP头部信息发起网络访问,获得初始目录页中的HTML代码,HTML是一种用于表示网页的结构化编程语言;浏览器通过HTML代码、CSS样式表、JavaScript脚本对网站进行渲染生成界面,其中界面上的各种文本数据均包含在网页的HTML代码中;根据网站模板中定义的Xpath或CSS selector规则提取内容页的互联网地址,若目录页只含一条内容页信息,则将内容页的互联网地址整理为单个互联网地址,若目录页包含多条内容页信息,则讲内容页的互联网地址整理为一个关于内容页的互联网地址的数组;然后将内容页的互联网地址的提取结果发往步骤2)进行内容页信息提取处理;而在步骤1)继续解析下一页目录页的互联网地址;对互联网上生活服务类网站、公示类网站分析能够发现网站的目录页的互联网地址具有一定规则,有些网站在互联网地址中通过参数指定目录页数,而其它一类网站并不具有明显规则,但在网页上提供有下一页的按钮,亦能够分析网页源代码提取该按钮指向的互联网地址;根据下一目录页的互联网地址,发起网络访问,若下一页有效遍重复上述目录页解析过程,否则结束步骤1);步骤1)以独立进程的方式运行,并通过socket方式与步骤2)交互。
3.根据权利要求1所述的一种城市互联网开放数据获取处理分析方法,其特征在于:在步骤2)中,接收步骤1)发送的内容页的互联网地址数据,若为单一的一个互联网地址,则访问该互联网地址;若为一个互联网地址数组,则以循环的方式访问其中每个互联网地址;在网站返回内容的HTML代码之后,根据网站模板中定义的价值数据提取规则,通过Xpath表达式,或CSS selector定义,提取数据,其中Xpath和CSS selector都能够用于定位HTML代码中结构节点,某节点包含对规划分析具有价值的数据,即能够利用Xpath表达式或CSSselector提取该节点,并提取其中的文本数据;然后,对提取的数据进行规整,经过规整的数据继而发送给步骤3)处理。
4.根据权利要求1所述的一种城市互联网开放数据获取处理分析方法,其特征在于:在步骤3)中,接收步骤2)中提取的具有分析价值的数据,若数据的地址项不为空,则分别通过高德地图服务或百度地图服务将地址项转换为空间地理坐标;由于百度和高德的地图分别使用各自的坐标体系,与研究工作中使用的WGS-84坐标体系不一致,因此还需将其坐标系转换为标准的WGS-84坐标系;坐标体系的转换本质上是一个函数变换,由于无法获取地理空间坐标系之间的转换函数,但神经网络算法能够在知道输入输出的情况下良好的拟合函数;因此需要构建一个4层的神经网络算法拟合坐标体系的转换过程;神经网络算法是一种机器学习算法,已证明神经网络通过将多层的非线性变换使得能够拟合任何函数;神经网络中任何两层表示为下式;
Xn=WXn-1
式中,Xn-1为输入向量,Xn为输出向量,W为输入层与输出层之间的权值;神经网络采用梯度下降的方式进行训练,训练过程即使神经网络预测的目标坐标与给定的样本坐标一致,误差函数表达为下式;
式中,y为给定的样本标签值,即输入坐标(lat,lng)对应目标WGS-84坐标向量;a为神经网络给出的预测目标坐标向量,该误差函数代表的含义为神经网络的输出与给定目标WGS-84之间的误差,其为一个凸函数,训练神经网络的目的即最小化该函数,即对各层的权值进行W调整,其调整方法表示为下式;
即权值向梯度方向更新,α是一个超参数,需要在训练是手动指定;通过这种方式,能够将神经网络拟合坐标系之间的转换函数;地址转换之后,将对数据按网站模板中定义的存储顺序排列,并存入指定的数据库中;同时,对统计数据,包括用户对商铺的平均服务评价得分、商圈的商铺数量、某区域拍卖土地面积等值进行更新,同时利用坐标信息在地图上绘制商铺或地块的信息进行可视化分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810001833.8A CN108182496A (zh) | 2018-01-02 | 2018-01-02 | 一种城市互联网开放数据获取处理分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810001833.8A CN108182496A (zh) | 2018-01-02 | 2018-01-02 | 一种城市互联网开放数据获取处理分析方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108182496A true CN108182496A (zh) | 2018-06-19 |
Family
ID=62549740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810001833.8A Pending CN108182496A (zh) | 2018-01-02 | 2018-01-02 | 一种城市互联网开放数据获取处理分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108182496A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159974A (zh) * | 2019-12-30 | 2020-05-15 | 北京明略软件系统有限公司 | 地址信息的标准化方法、装置、存储介质及电子设备 |
CN111666839A (zh) * | 2020-05-25 | 2020-09-15 | 东华大学 | 一种基于改进Faster RCNN的道路行人检测系统 |
CN114201971A (zh) * | 2021-12-13 | 2022-03-18 | 海南港航控股有限公司 | 一种从网页中提取人物属性的方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677862A (zh) * | 2016-01-08 | 2016-06-15 | 上海数道信息科技有限公司 | 一种抓取网页内容的方法及装置 |
US20170024473A1 (en) * | 2012-02-21 | 2017-01-26 | Spotright, Inc. | Systems and methods for identifying and analyzing internet users |
-
2018
- 2018-01-02 CN CN201810001833.8A patent/CN108182496A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170024473A1 (en) * | 2012-02-21 | 2017-01-26 | Spotright, Inc. | Systems and methods for identifying and analyzing internet users |
CN105677862A (zh) * | 2016-01-08 | 2016-06-15 | 上海数道信息科技有限公司 | 一种抓取网页内容的方法及装置 |
Non-Patent Citations (4)
Title |
---|
KIMG1234: "爬虫入门到精通-网页的解析(xpath)", 《SEGMENTFAULT(HTTPS://SEGMENTFAULT.COM/A/1190000009111476)》 * |
吴兆福 等: "基于BP神经网络的GPS坐标转换", 《工程勘察》 * |
天方: "使用Chrome快速实现数据的抓取(四)—— 优点", 《博客园(HTTPS://WWW.CNBLOGS.COM/TIANFANG/P/7148043.HTML)》 * |
掷骰子的求: "Python爬虫学习-爬取大规模数据(10w级)", 《简书(HTTPS://WWW.JIANSHU.COM/P/5F5CFEFD7F1D)》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159974A (zh) * | 2019-12-30 | 2020-05-15 | 北京明略软件系统有限公司 | 地址信息的标准化方法、装置、存储介质及电子设备 |
CN111666839A (zh) * | 2020-05-25 | 2020-09-15 | 东华大学 | 一种基于改进Faster RCNN的道路行人检测系统 |
CN114201971A (zh) * | 2021-12-13 | 2022-03-18 | 海南港航控股有限公司 | 一种从网页中提取人物属性的方法及系统 |
CN114201971B (zh) * | 2021-12-13 | 2023-06-13 | 海南港航控股有限公司 | 一种从网页中提取人物属性的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Vega-Redondo | Complex social networks | |
CN110462604A (zh) | 基于设备使用关联互联网设备的数据处理系统和方法 | |
CN105117422A (zh) | 智能社交网络推荐系统 | |
CN106296312A (zh) | 基于社交媒体的在线教育资源推荐系统 | |
CN106021377A (zh) | 计算机实现的信息处理方法及装置 | |
CN104834711A (zh) | 基于位置的数据服务装置和方法 | |
CN113254630B (zh) | 一种面向全球综合观测成果的领域知识图谱推荐方法 | |
Pan et al. | Clustering of designers based on building information modeling event logs | |
CN108182496A (zh) | 一种城市互联网开放数据获取处理分析方法 | |
CN112819659B (zh) | 旅游景点开发与评价方法 | |
CN108416524A (zh) | 基于一张图通用框架的产业规划精细化解读方法 | |
CN104715063A (zh) | 搜索排序方法和装置 | |
CN111696656B (zh) | 一种互联网医疗平台的医生评价方法、装置 | |
CN114416900A (zh) | 一种轨迹停留点分析的方法和装置 | |
Jiang et al. | Novel QoS optimization paradigm for IoT systems with fuzzy logic and visual information mining integration | |
CN117217634B (zh) | 一种基于复杂网络的企业合作社区发现方法 | |
Orlovskyi et al. | Enterprise architecture modeling support based on data extraction from business process models. | |
CN113469752A (zh) | 内容推荐方法、装置、存储介质及电子设备 | |
Shih et al. | Digital placemaking for urban regeneration: Identification of historic heritage values in Taiwan and the Baltic States | |
Li et al. | A machine learning approach to the simulation of intercity corporate networks in mainland China | |
CN112100395A (zh) | 一种专家合作可行性分析方法 | |
Amzad et al. | Tourism recommendation system: a systematic review | |
Hsieh et al. | Efficient Mining of Profit Rules from Closed Inter-Transaction Itemsets. | |
CN110633890A (zh) | 一种土地利用效率判断方法和系统 | |
Madhusanka et al. | Social network analysis of building energy and carbon policy networks in developing countries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180619 |
|
RJ01 | Rejection of invention patent application after publication |