国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Selenium獲取百度百科旅游景點的InfoBox消息盒

這篇具有很好參考價值的文章主要介紹了Selenium獲取百度百科旅游景點的InfoBox消息盒。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?前面我講述過如何通過BeautifulSoup獲取維基百科的消息盒,同樣可以通過Spider獲取網(wǎng)站內(nèi)容,最近學(xué)習(xí)了Selenium+Phantomjs后,準(zhǔn)備利用它們獲取百度百科的旅游景點消息盒(InfoBox),這也是畢業(yè)設(shè)計實體對齊和屬性的對齊的語料庫前期準(zhǔn)備工作。希望文章對你有所幫助~

源代碼

#?coding=utf-8????
"""??
Created?on?2015-09-04?@author:?Eastmount???
"""????
????
import?time????????????
import?re????????????
import?os????
import?sys??
import?codecs??
from?selenium?import?webdriver????????
from?selenium.webdriver.common.keys?import?Keys????????
import?selenium.webdriver.support.ui?as?ui????????
from?selenium.webdriver.common.action_chains?import?ActionChains????
????
#Open?PhantomJS????
driver?=?webdriver.PhantomJS(executable_path="G:\phantomjs-1.9.1-windows\phantomjs.exe")????
#driver?=?webdriver.Firefox()????
wait?=?ui.WebDriverWait(driver,10)??
global?info?#全局變量??
??
#Get?the?infobox?of?5A?tourist?spots????
def?getInfobox(name):????
????try:????
????????#create?paths?and?txt?files??
????????global?info??
????????basePathDirectory?=?"Tourist_spots_5A"????
????????if?not?os.path.exists(basePathDirectory):????
????????????os.makedirs(basePathDirectory)????
????????baiduFile?=?os.path.join(basePathDirectory,"BaiduSpider.txt")????
????????if?not?os.path.exists(baiduFile):????
????????????info?=?codecs.open(baiduFile,'w','utf-8')????
????????else:????
????????????info?=?codecs.open(baiduFile,'a','utf-8')????
????????
????????#locate?input??notice:?1.visit?url?by?unicode?2.write?files????
????????print?name.rstrip('\n')?#delete?char?'\n'????
????????driver.get("http://baike.baidu.com/")????
????????elem_inp?=?driver.find_element_by_xpath("http://form[@id='searchForm']/input")????
????????elem_inp.send_keys(name)????
????????elem_inp.send_keys(Keys.RETURN)????
????????info.write(name.rstrip('\n')+'\r\n')??#codecs不支持'\n'換行??
????????time.sleep(2)??
????????print?driver.current_url??
????????print?driver.title??
????
????????#load?infobox?basic-info?cmn-clearfix??
????????elem_name?=?driver.find_elements_by_xpath("http://div[@class='basic-info?cmn-clearfix']/dl/dt")????
????????elem_value?=?driver.find_elements_by_xpath("http://div[@class='basic-info?cmn-clearfix']/dl/dd")??
????????for?e?in?elem_name:??
????????????print?e.text??
????????for?e?in?elem_value:??
????????????print?e.text??
??
????
????????#create?dictionary?key-value??
????????#字典是一種散列表結(jié)構(gòu),數(shù)據(jù)輸入后按特征被散列,不記錄原來的數(shù)據(jù),順序建議元組??
????????elem_dic?=?dict(zip(elem_name,elem_value))???
????????for?key?in?elem_dic:????
????????????print?key.text,elem_dic[key].text????
????????????info.writelines(key.text+"?"+elem_dic[key].text+'\r\n')????
????????time.sleep(5)????
????????????
????except?Exception,e:?#'utf8'?codec?can't?decode?byte????
????????print?"Error:?",e????
????finally:????
????????print?'\n'????
????????info.write('\r\n')????
????
#Main?function????
def?main():??
????global?info??
????#By?function?get?information?????
????source?=?open("Tourist_spots_5A_BD.txt",'r')????
????for?name?in?source:????
????????name?=?unicode(name,"utf-8")????
????????if?u'故宮'?in?name:?#else?add?a?'?'????
????????????name?=?u'北京故宮'????
????????getInfobox(name)????
????print?'End?Read?Files!'????
????source.close()????
????info.close()????
????driver.close()????
????
main()??

??????

運行結(jié)果


? ? ? ? 主要通過從F盤中txt文件中讀取國家5A級景區(qū)的名字,再調(diào)用Phantomjs.exe瀏覽器依次訪問獲取InfoBox值。同時如果存在編碼問題“'ascii' codec can't encode characters”則可通過下面代碼設(shè)置編譯器utf-8編碼,代碼如下:
?

#設(shè)置編碼utf-8??
import?sys???
reload(sys)????
sys.setdefaultencoding('utf-8')??
#顯示當(dāng)前默認(rèn)編碼方式??
print?sys.getdefaultencoding()??

Selenium獲取百度百科旅游景點的InfoBox消息盒,selenium,測試工具

Selenium獲取百度百科旅游景點的InfoBox消息盒,selenium,測試工具

對應(yīng)源碼


? ? ? ? 其中對應(yīng)的百度百科InfoBox源代碼如下圖,代碼中基礎(chǔ)知識可以參考我前面的博文或我的Python爬蟲專利,Selenium不僅僅擅長做自動測試,同樣適合做簡單的爬蟲。

Selenium獲取百度百科旅游景點的InfoBox消息盒,selenium,測試工具

編碼問題


? ? ? ? 此時你仍然可能遇到“'ascii' codec can't encode characters”編碼問題。
Selenium獲取百度百科旅游景點的InfoBox消息盒,selenium,測試工具

? ? ? ?它是因為你創(chuàng)建txt文件時默認(rèn)是ascii格式,此時你的文字確實'utf-8'格式,所以需要轉(zhuǎn)換通過如下方法。

import?codecs??
??
#用codecs提供的open方法來指定打開的文件的語言編碼,它會在讀取的時候自動轉(zhuǎn)換為內(nèi)部unicode??
if?not?os.path.exists(baiduFile):????
????info?=?codecs.open(baiduFile,'w','utf-8')????
else:????
????info?=?codecs.open(baiduFile,'a','utf-8')??
??????
#該方法不是io故換行是'\r\n'??
info.writelines(key.text+":"+elem_dic[key].text+'\r\n')????

總結(jié)


? ? ? ?你可以代碼中學(xué)習(xí)基本的自動化爬蟲方法、同時可以學(xué)會如何通過for循環(huán)顯示key-value鍵值對,對應(yīng)的就是顯示的屬性和屬性值,通過如下代碼實現(xiàn):? ? ??

?elem_dic = dict(zip(elem_name,elem_value))


? ? ? ?但最后的輸出結(jié)果不是infobox中的順序,why??
? ? ? ?最后希望文章對你有所幫助,還有一篇基礎(chǔ)介紹文章,文章來源地址http://www.zghlxwxcb.cn/news/detail-720582.html

到了這里,關(guān)于Selenium獲取百度百科旅游景點的InfoBox消息盒的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 2.Python數(shù)據(jù)分析項目——旅游景點票價預(yù)測

    2.Python數(shù)據(jù)分析項目——旅游景點票價預(yù)測

    流程 具體操作 基本查看 查看缺失值、查看數(shù)值類型 預(yù)處理 缺失值處理(填充)拆分?jǐn)?shù)據(jù)(獲取有需要的值) 、統(tǒng)一數(shù)據(jù)格式 數(shù)據(jù)分析 groupby分組求最值數(shù)據(jù)、seaborn可視化 預(yù)測(RandomForestRegressor) 拆分?jǐn)?shù)據(jù)集、建立模型、訓(xùn)練模型、預(yù)測、評估模型 數(shù)量查看:條形圖 占

    2024年02月10日
    瀏覽(31)
  • 【網(wǎng)站項目】基于jsp的199旅游景點管理系統(tǒng)

    【網(wǎng)站項目】基于jsp的199旅游景點管理系統(tǒng)

    ??作者簡介:多年一線開發(fā)工作經(jīng)驗,分享技術(shù)代碼幫助學(xué)生學(xué)習(xí),獨立完成自己的項目或者畢業(yè)設(shè)計。 代碼可以私聊博主獲取。?? 贈送計算機(jī)畢業(yè)設(shè)計600個選題excel文件,幫助大學(xué)選題。 贈送開題報告模板,幫助書寫開題報告。 作者完整代碼目錄供你選擇: 《Springboo

    2024年01月21日
    瀏覽(24)
  • 基于Java(SpringBoot框架)畢業(yè)設(shè)計作品成品(44)旅游景點旅游線路旅游網(wǎng)站管理系統(tǒng)設(shè)計與實現(xiàn)

    基于Java(SpringBoot框架)畢業(yè)設(shè)計作品成品(44)旅游景點旅游線路旅游網(wǎng)站管理系統(tǒng)設(shè)計與實現(xiàn)

    博主介紹: 《Vue.js入門與商城開發(fā)實戰(zhàn)》《微信小程序商城開發(fā)》圖書作者,CSDN博客專家,在線教育專家,CSDN鉆石講師;專注大學(xué)生畢業(yè)設(shè)計教育和輔導(dǎo)。 所有項目都配有從入門到精通的基礎(chǔ)知識視頻課程,免費 項目配有對應(yīng)開發(fā)文檔、開題報告、任務(wù)書、PPT、論文模版

    2024年02月06日
    瀏覽(24)
  • Java基于springboot開發(fā)的景點旅游項目

    Java基于springboot開發(fā)的景點旅游項目

    演示視頻 https://www.bilibili.com/video/BV1cj411Y7UK/?share_source=copy_webvd_source=11344bb73ef9b33550b8202d07ae139b 主要功能:用戶可瀏覽搜索旅游景點(分為收費和免費景點),購票(支持多規(guī)格套餐購票),也可發(fā)布游記,評論。查看訂單退款等(頁面適配手機(jī))。 角色:管理員+注冊用戶 技

    2024年02月05日
    瀏覽(30)
  • Python旅游景點數(shù)據(jù)大屏 爬蟲+實時監(jiān)控系統(tǒng) 旅游數(shù)據(jù)可視化 大數(shù)據(jù) 畢業(yè)設(shè)計

    Python旅游景點數(shù)據(jù)大屏 爬蟲+實時監(jiān)控系統(tǒng) 旅游數(shù)據(jù)可視化 大數(shù)據(jù) 畢業(yè)設(shè)計

    1、系統(tǒng)功能 可視化: (1)數(shù)據(jù)可視化,實現(xiàn)中國地圖、動態(tài)柱狀圖、餅圖、環(huán)圖、漏斗圖等方式對數(shù)據(jù)庫數(shù)據(jù)分析 (2)百度熱力圖展示景點銷售數(shù)據(jù) 爬蟲: **去哪兒網(wǎng)**熱門景點數(shù)據(jù)爬蟲,解析后存儲入mysql數(shù)據(jù)庫中 實現(xiàn)功能 (1)爬蟲:爬取去哪兒網(wǎng)的熱門景點數(shù)據(jù),

    2024年02月13日
    瀏覽(26)
  • 基于Python熱門旅游景點數(shù)據(jù)分析系統(tǒng)設(shè)計與實現(xiàn)

    基于Python熱門旅游景點數(shù)據(jù)分析系統(tǒng)設(shè)計與實現(xiàn)

    博主介紹 : ?全網(wǎng)粉絲30W+,csdn特邀作者、博客專家、CSDN新星計劃導(dǎo)師、java優(yōu)質(zhì)創(chuàng)作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺優(yōu)質(zhì)作者、專注于Java技術(shù)領(lǐng)域和畢業(yè)項目實戰(zhàn) ? ?? 文末獲取源碼聯(lián)系 ?? ???? 精彩專欄 推薦訂閱 ???? 不然下次找不到喲 java項目精品實戰(zhàn)

    2024年02月11日
    瀏覽(16)
  • 基于PYTHON django四川旅游景點推薦系統(tǒng)

    基于PYTHON django四川旅游景點推薦系統(tǒng)

    摘 要 基于四川旅游景點推薦系統(tǒng)的設(shè)計與實現(xiàn)是一個專為四川旅游景點為用戶打造的旅游網(wǎng)站。該課題基于網(wǎng)站比較流行的Python 語言系統(tǒng)架構(gòu),B/S三層結(jié)構(gòu)模式,通過Maven項目管理工具進(jìn)行Jar包版本的控制。本系統(tǒng)用戶可以發(fā)布個人游記,查看景點使用戶達(dá)到良好的旅游體驗

    2024年02月02日
    瀏覽(87)
  • 大數(shù)據(jù)畢業(yè)設(shè)計Python+Django旅游景點評論數(shù)據(jù)采集分析可視化系統(tǒng) NLP情感分析 LDA主題分析 bayes分類 旅游爬蟲 旅游景點評論爬蟲 機(jī)器學(xué)習(xí) 深度學(xué)習(xí) 人工智能 計算機(jī)畢業(yè)設(shè)計

    大數(shù)據(jù)畢業(yè)設(shè)計Python+Django旅游景點評論數(shù)據(jù)采集分析可視化系統(tǒng) NLP情感分析 LDA主題分析 bayes分類 旅游爬蟲 旅游景點評論爬蟲 機(jī)器學(xué)習(xí) 深度學(xué)習(xí) 人工智能 計算機(jī)畢業(yè)設(shè)計

    畢業(yè)論文(設(shè)計)開題報告 學(xué)生姓名 學(xué) ?號 所在學(xué)院 信息工程學(xué)院 專 ?業(yè) 指導(dǎo)教師姓名 指導(dǎo)教師職稱 工程師 助教 指導(dǎo)教師單位 論文(設(shè)計)題目 基于樸素貝葉斯算法旅游景點線上評價情感分析 開 ?題 ?報 ?告 ?內(nèi) ?容 選題依據(jù)及研究內(nèi)容(國內(nèi)、外研究現(xiàn)狀,初步

    2024年04月17日
    瀏覽(104)
  • 基于spark的熱門旅游景點門票數(shù)據(jù)可視化分析系統(tǒng)

    基于spark的熱門旅游景點門票數(shù)據(jù)可視化分析系統(tǒng)

    熱門旅游景點數(shù)據(jù)分析系統(tǒng)綜合網(wǎng)絡(luò)空間開發(fā)設(shè)計要求。目的是將傳統(tǒng)管理方式轉(zhuǎn)換為在網(wǎng)上管理,完成熱門旅游景點數(shù)據(jù)分析管理的方便快捷、安全性高、交易規(guī)范做了保障,目標(biāo)明確。熱門旅游景點數(shù)據(jù)分析系統(tǒng)功能主要包括個人中心、門票信息管理、名宿信息管理、系

    2024年04月14日
    瀏覽(25)
  • 基于hive的安順旅游景點數(shù)據(jù)分析的設(shè)計與實現(xiàn)

    基于hive的安順旅游景點數(shù)據(jù)分析的設(shè)計與實現(xiàn)

    博主介紹 : ? 全網(wǎng)粉絲30W+,csdn特邀作者、博客專家、CSDN新星計劃導(dǎo)師、Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺優(yōu)質(zhì)作者、專注于Java技術(shù)領(lǐng)域和學(xué)生畢業(yè)項目實戰(zhàn),高校老師/講師/同行前輩交流 ? 主要內(nèi)容: SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、P

    2024年03月12日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包