亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于房產(chǎn)交易網(wǎng)站的數(shù)據(jù)獲取與在線(xiàn)工具開(kāi)發(fā)

        2017-06-05 14:15:40王藎梓賴(lài)雯潔
        關(guān)鍵詞:房產(chǎn)信息鏈家爬蟲(chóng)

        王藎梓,賴(lài)雯潔

        (華東師范大學(xué) 地理科學(xué)學(xué)院,上海 200241)

        基于房產(chǎn)交易網(wǎng)站的數(shù)據(jù)獲取與在線(xiàn)工具開(kāi)發(fā)

        王藎梓,賴(lài)雯潔

        (華東師范大學(xué) 地理科學(xué)學(xué)院,上海 200241)

        房屋交易網(wǎng)站提供了每個(gè)交易房產(chǎn)的詳細(xì)信息,自動(dòng)獲取這些數(shù)據(jù)并進(jìn)行在線(xiàn)分析可以幫助人們更好地分析一個(gè)地區(qū)房產(chǎn)情況,更有利于決策。開(kāi)發(fā)網(wǎng)頁(yè)分析工具是分析大數(shù)據(jù)發(fā)展的趨勢(shì),其具有更少的代碼,同時(shí)擁有不亞于應(yīng)用程序的功能實(shí)現(xiàn)數(shù)據(jù)采集與數(shù)據(jù)分析的實(shí)時(shí)對(duì)接,使得其成為工具開(kāi)發(fā)的新寵。房產(chǎn)交易網(wǎng)站在線(xiàn)工具利用Python語(yǔ)言結(jié)合Scrapy、ArcPy等第三方模塊開(kāi)發(fā),可自動(dòng)提取房產(chǎn)數(shù)據(jù),并針對(duì)不同數(shù)據(jù)類(lèi)型,對(duì)某一地區(qū)的房產(chǎn)進(jìn)行空間分布分析和規(guī)律監(jiān)測(cè)等。以鏈家網(wǎng)、安居客兩個(gè)房產(chǎn)交易網(wǎng)站為例,從中獲取上海市的新房、二手房等房產(chǎn)數(shù)據(jù),通過(guò)統(tǒng)計(jì)圖表的形式顯示上海市房產(chǎn)的空間分布情況,房?jī)r(jià)漲幅,各地區(qū)房產(chǎn)數(shù)量分布比例等,實(shí)現(xiàn)用戶(hù)對(duì)大數(shù)據(jù)的進(jìn)一步分析認(rèn)識(shí)。

        房屋交易網(wǎng)站;網(wǎng)絡(luò)爬蟲(chóng);地理編碼;ArcPy

        0 引 言

        隨著房產(chǎn)市場(chǎng)的快速發(fā)展和互聯(lián)網(wǎng)技術(shù)的廣泛應(yīng)用,目前網(wǎng)上已有很多房屋交易網(wǎng)站,如鏈家網(wǎng)、安居客、yes515、愛(ài)屋吉屋、我愛(ài)我家等,這些網(wǎng)站為購(gòu)房者和售房者提供了交易平臺(tái),用戶(hù)可以從網(wǎng)站上查看每個(gè)交易房產(chǎn)的詳細(xì)信息,如房產(chǎn)位置、房?jī)r(jià)、房屋的建造年代、樓層等。由于房屋交易網(wǎng)站覆蓋面廣,反映的信息實(shí)時(shí)性強(qiáng),因此,對(duì)房屋交易網(wǎng)站上的房產(chǎn)信息進(jìn)行分析能實(shí)時(shí)掌握一個(gè)地區(qū)的房產(chǎn)市場(chǎng)情況。但網(wǎng)站上的信息是以Web頁(yè)面的形式呈現(xiàn),并不是直接可以用于分析的數(shù)據(jù),如以瀏覽網(wǎng)頁(yè)的方式來(lái)進(jìn)行分析,顯然效率很低,很難實(shí)現(xiàn)對(duì)房產(chǎn)市場(chǎng)的實(shí)時(shí)變化監(jiān)測(cè)。從網(wǎng)頁(yè)中抓取原始數(shù)據(jù),并處理成可以直接用于分析的數(shù)據(jù)這方面已有很多研究。較流行的抽取工具有MDR[1]、改進(jìn)方法Depta[2]等,但其更希望目標(biāo)網(wǎng)頁(yè)是結(jié)構(gòu)化的,因?yàn)槌槿〉男畔⒅饕窃诹斜砘虮砀裰?。梅雪等[3]基于網(wǎng)頁(yè)模板的設(shè)計(jì)準(zhǔn)則,提出了全自動(dòng)生成網(wǎng)頁(yè)信息抽取包裝器Wrapper的方法—PSNT(extraction based on temPlate Structure aNd Tag tree),該方法同時(shí)實(shí)現(xiàn)了對(duì)網(wǎng)頁(yè)中嚴(yán)格和松散的結(jié)構(gòu)化信息的自動(dòng)化抽取,在相似網(wǎng)站中模板生成的匹配效果較好。例如主網(wǎng)站及其各個(gè)子網(wǎng)站,針對(duì)不同開(kāi)發(fā)商的網(wǎng)站,還需要重新匹配模板。歐健文等[4]使用多個(gè)網(wǎng)頁(yè)對(duì)模板進(jìn)行訓(xùn)練,以得到較為普適的模板,而后對(duì)歸類(lèi)爬取網(wǎng)頁(yè)的主題信息,這對(duì)于搜索引擎十分實(shí)用。在地理信息提取方面,王曙等[5]針對(duì)同一地理要素有不同描述的語(yǔ)言特點(diǎn),建立地理語(yǔ)料庫(kù),使用搜索引擎與通用主題相結(jié)合的爬蟲(chóng)抓取網(wǎng)頁(yè)。該方法沒(méi)有事先訓(xùn)練樣本,是先廣泛獲取相關(guān)網(wǎng)頁(yè),而后從篩選下來(lái)的網(wǎng)頁(yè)中再次爬取內(nèi)容,才可獲取數(shù)據(jù)。這幾種方法都是大面積爬取地理信息,并沒(méi)有真正意義上利用Web中的原始數(shù)據(jù),因此為了對(duì)地理數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,定點(diǎn)定抓的輕量級(jí)主題爬蟲(chóng)更為適合,功能全面且獲取的是原始數(shù)據(jù)。

        從網(wǎng)站抓取房產(chǎn)信息不僅是文本數(shù)據(jù),還需要轉(zhuǎn)換成GIS數(shù)據(jù),以方便對(duì)房產(chǎn)信息進(jìn)行空間分析。除此之外,由于在大城市及特大城市中房產(chǎn)相應(yīng)特征指標(biāo)變化較其他城市迅速[6-8],比起耗時(shí)長(zhǎng)的精確研究,實(shí)時(shí)監(jiān)測(cè)可以掌握房產(chǎn)變化最新動(dòng)態(tài)。以鏈家網(wǎng)和安居客網(wǎng)站為例,研究基于房屋交易網(wǎng)站的房產(chǎn)數(shù)據(jù)獲取與在線(xiàn)分析工具開(kāi)發(fā),并演示在上海市的應(yīng)用。

        1 主要房產(chǎn)交易網(wǎng)站介紹

        1.1 鏈家網(wǎng)網(wǎng)站

        鏈家網(wǎng)(http://www.lianjia.com/)是鏈家房地產(chǎn)經(jīng)紀(jì)有限公司在2009年成立的房產(chǎn)交易線(xiàn)上平臺(tái),其主要業(yè)務(wù)領(lǐng)域?yàn)樾路?、二手房和租房。房產(chǎn)數(shù)據(jù)包括小區(qū)名稱(chēng)、地址、小區(qū)房屋均價(jià)、建造年代、樓棟總數(shù)、房屋總數(shù)、容積率、綠化率等信息。不僅如此,鏈家網(wǎng)中有百度地圖提供的定位顯示功能,可以直接得到小區(qū)的經(jīng)緯度信息,如圖1所示。

        圖1 鏈家網(wǎng)顯示信息

        1.2 安居客網(wǎng)站

        安居客(http://shanghai.anjuke.com/)是2007年成立的互聯(lián)網(wǎng)房產(chǎn)交易平臺(tái),主要業(yè)務(wù)領(lǐng)域?yàn)樾路?、二手房、租房、商業(yè)寫(xiě)字樓四部分,2015年進(jìn)入58同城旗下。與鏈家網(wǎng)相比,安居客的房產(chǎn)沒(méi)有地理坐標(biāo),需要經(jīng)過(guò)地理編碼得到地理坐標(biāo);在數(shù)據(jù)細(xì)節(jié)方面,安居客的數(shù)據(jù)較鏈家網(wǎng)更為全面。以春申景城為例,在鏈家網(wǎng)中搜索結(jié)果只有“春申景城(公寓)”1條數(shù)據(jù),如圖1所示,但在安居客中搜索結(jié)果有4條,如圖2所示,分為一、二、三期和MID-TOWN,分類(lèi)更為細(xì)致。另外,安居客房產(chǎn)信息中有物業(yè)類(lèi)型、物業(yè)費(fèi)用、總建面、停車(chē)位、出租率等,數(shù)據(jù)種類(lèi)更為全面。

        2 原始房產(chǎn)數(shù)據(jù)獲取方法

        從網(wǎng)站中獲取數(shù)據(jù)主要包括三個(gè)過(guò)程:確定網(wǎng)頁(yè)地址(URL),解析網(wǎng)頁(yè)文件,存儲(chǔ)數(shù)據(jù)規(guī)范格式。下面介紹利用Scrapy爬蟲(chóng)框架實(shí)現(xiàn)上述過(guò)程的方法。

        2.1 Scrapy簡(jiǎn)介

        Scrapy是Python的第三方軟件包,是一個(gè)簡(jiǎn)單輕量級(jí)的爬蟲(chóng)框架,操作簡(jiǎn)便,適合爬行簡(jiǎn)單網(wǎng)頁(yè)數(shù)據(jù)。如果HTML格式復(fù)雜,含有JSON,或需要用戶(hù)身份驗(yàn)證等,可以考慮使用Java的分布式Nutch或穩(wěn)定性更好的Heritrix[9-15]。Scrapy規(guī)范了完整爬蟲(chóng)應(yīng)有的核心:服務(wù)請(qǐng)求與返回、網(wǎng)頁(yè)解析、數(shù)據(jù)存儲(chǔ)。同時(shí)提供給用戶(hù)足夠的空間來(lái)完善爬蟲(chóng),用戶(hù)鎖定目標(biāo)網(wǎng)站后只需分析網(wǎng)頁(yè)結(jié)構(gòu),即可快速編寫(xiě)爬蟲(chóng)。

        使用Scrapy需要安裝第三方擴(kuò)展包,Python2.x版本中需要安裝:zope.interface,pypiwin32,pyOpenSSL,twisted,libxml2dom,lxml,Scrapy。Scrapy框架的工作原理是:首先傳入U(xiǎn)RL,調(diào)度器(scheduler)將其傳入下載器(downloader)對(duì)服務(wù)器發(fā)出訪(fǎng)問(wèn)請(qǐng)求,返回結(jié)果傳入爬蟲(chóng)(spider)中進(jìn)行解析。如果含有超鏈接,則傳回調(diào)度器,否則傳入解析器(ItemPipeline),利用ScrapySelector對(duì)HTML文件進(jìn)行解析。

        2.2 確定URL

        通常情況下,傳入爬蟲(chóng)的是網(wǎng)站的主網(wǎng)頁(yè),即用戶(hù)最先瀏覽的主頁(yè),而后根據(jù)不同的需求在主頁(yè)相關(guān)的網(wǎng)頁(yè)之間切換。因此確定URL的關(guān)鍵是網(wǎng)頁(yè)的相互切換,其可分為當(dāng)前網(wǎng)頁(yè)的切換和超鏈接跳轉(zhuǎn)兩種,而本質(zhì)上兩者都是通過(guò)對(duì)URL的改變來(lái)實(shí)現(xiàn)的。以安居客網(wǎng)頁(yè)為例演示確定URL方法。

        圖2 安居客網(wǎng)站房產(chǎn)信息網(wǎng)頁(yè)

        在Scrapy中免去了爬蟲(chóng)需要編寫(xiě)的請(qǐng)求返回命令,用戶(hù)只需直接傳入U(xiǎn)RL即可。觀(guān)察安居客主網(wǎng)站為目錄界面,為抓取全網(wǎng)數(shù)據(jù)需要機(jī)器模擬翻頁(yè)。在view-source中查找“下一頁(yè)”的源碼,所在主標(biāo)簽為

        ,當(dāng)在第一頁(yè)時(shí),“下一頁(yè)”所在標(biāo)簽為,標(biāo)簽中含有超鏈接,即需要抓取的URL。而在最后一頁(yè)時(shí),“下一頁(yè)”所在標(biāo)簽為,標(biāo)簽中不含超鏈接??梢詫⒅鳛檠h(huán)條件,遇到無(wú)鏈接的情況則跳出循環(huán)翻頁(yè)。

        實(shí)現(xiàn)模擬翻頁(yè)代碼如下:

        classConSpider(Spider):#創(chuàng)建URL池類(lèi)ConSpider

        name="con" #爬蟲(chóng)名稱(chēng)為con,必須唯一

        allowed_domains=["shanghai.anjuke.com"]#域名

        start_urls=[]

        tpath='//div[@class="page-content"]/div[@class="multi-page"]/a[@class="aNxt"]/@href'

        npath='//div[@class="page-content"]/div[@class="multi-page"]/i[@class="iNxt"]'

        while True:

        #rpage為當(dāng)前網(wǎng)頁(yè)傳入selector的解析,利用XPath尋找路徑,

        nxtpage=rpage.xpath(npath)

        #限制循環(huán)條件,如果最后一頁(yè)的“下一頁(yè)”標(biāo)簽不存在,即為空,未到最后一頁(yè)

        ifnxtpage==[]:

        turl=rpage.xpath(tpath)[0]

        #讀取“下一頁(yè)”標(biāo)簽中的超鏈接,@href讀取屬性,結(jié)果為只含有一個(gè)元素的list

        start_url.append(turl) #將URL加入鏈接池

        else:

        break

        在當(dāng)前目錄頁(yè)一般含有的小區(qū)信息是不全面的,需要跳轉(zhuǎn)到該小區(qū)網(wǎng)頁(yè)進(jìn)行抓取。首先對(duì)當(dāng)前網(wǎng)頁(yè)進(jìn)行DOMtree分析。小區(qū)信息包含在

      1. 中,嵌套于
      2. 国产黄色一区二区在线看| 猫咪www免费人成网最新网站| 国产精品日韩欧美一区二区区| 黑人一区二区三区在线| 黄片国产一区二区三区| 欧美激欧美啪啪片| 亚洲精品无码成人a片| 国产精品亚洲А∨天堂免下载| 国产在线观看不卡网址| 久久婷婷综合激情五月| 久久精品国产亚洲av影院| 国产成人精品无码播放| 午夜无码无遮挡在线视频| 成人黄色片久久久大全| 亚洲一区二区三区小说| 51久久国产露脸精品国产| 国产精品天天看大片特色视频| 国产一区二区三区再现| 国产精品久久久福利| 久青草久青草视频在线观看| 久久精品国产一区二区蜜芽| 国产成人高清视频在线观看免费 | 青青草手机在线观看视频在线观看 | 亚洲成人激情深爱影院在线| 久久精品国产亚洲av麻豆图片| √天堂中文官网8在线| 色二av手机版在线| 日本一级二级三级不卡| 性无码专区无码| 午夜国产在线| 国产肥熟女视频一区二区三区| 丝袜美腿av在线观看| 国产精品亚洲一区二区三区在线| AV无码一区二区三区国产| 一二三四在线观看韩国视频| 国产精品高清一区二区三区不卡| www插插插无码免费视频网站 | 亚洲综合无码无在线观看| 亚洲男人堂色偷偷一区| 日本免费看一区二区三区| 久久国产精品偷任你爽任你|