python网络爬虫实践收获_python网络爬虫实习报告
python網絡爬蟲實習報告
(13頁)
本資源提供全文預覽,點擊全文預覽即可全文預覽,如果喜歡文檔就下載吧,查找使用更方便哦!
12.9 積分
Python 網絡爬蟲實習報告 Python 網絡爬蟲實習(報告) - 0 - 目錄目錄 一、選題背景一、選題背景- 2 - 二、爬蟲原理二、爬蟲原理- 2 - 三、爬蟲歷史和分類三、爬蟲歷史和分類.- 2 - 四、常用爬蟲框架比較四、常用爬蟲框架比較.- 5 - 五、數據爬取實戰(五、數據爬取實戰(豆瓣網爬取電影數據豆瓣網爬取電影數據)) .- 6 - 1 分析網頁 .- 6 - 2 爬取數據 .- 7 - 3 數據整理、轉換 .- 10 - 4 數據保存、展示 .- 12 - 5 技術難點關鍵點 .- 12 - 六、總結六、總結- 14 - Python 網絡爬蟲實習(報告) - 1 - 一、一、選題背景選題背景 二、二、爬蟲原理爬蟲原理 三、三、爬蟲歷史和分類爬蟲歷史和分類 四、四、常用爬蟲框架比較常用爬蟲框架比較 ScrapyScrapy 框架框架: :Scrapy 框架是一套比較成熟的 Python 爬蟲框架,是使 用 Python 開發的快速、高層次的信息爬取框架,可以高效的爬取 web 頁面并提取出結構化數據。Scrapy 應用范圍很廣,爬蟲開發、數 據挖掘、數據監測、自動化測試等。 CrawleyCrawley 框架框架: :Crawley 也是 Python 開發出的爬蟲框架,該框架致力 于改變人們從互聯網中提取數據的方式。 PortiaPortia 框架框架: :Portia 框架是一款允許沒有任何編程基礎的用戶可視化 地爬取網頁的爬蟲框架。 newspapernewspaper 框架框架: :newspaper 框架是一個用來提取新聞、文章以及內容 分析的 Python 爬蟲框架。 Python-goosePython-goose 框架:框架:Python-goose 框架可提取的信息包括:文章 主體內容;文章主要圖片;文章中嵌入的任 heYoutube/Vimeo 視 頻;元描述;元標簽 Python 網絡爬蟲實習(報告) - 2 - 五、五、數據爬取實戰(豆瓣網爬取電影數據)數據爬取實戰(豆瓣網爬取電影數據) 1 分析網頁分析網頁 # # 獲取獲取 htmlhtml 源代碼源代碼 defdef __getHtml():__getHtml(): datadata = = [][] pageNumpageNum = = 1 1 pageSizepageSize = = 0 0 try:try: whilewhile (pageSize(pageSize “)f.write(““) f.write(“Insertcharset='UTF-8'Insert titletitle here“)here“) f.write(““)f.write(““) f.write(“f.write(“爬取豆瓣電影爬取豆瓣電影“)“) f.write(“f.write(“ 作者:劉文斌作者:劉文斌“)“) f.write(“f.write(“ 時間:時間:“ “ + + nowtimenowtime + + ““)““) Python 網絡爬蟲實習(報告) - 6 - f.write(““)f.write(““) f.write(““)align=center“) f.write(““)f.write(““) f.write(““)f.write(““) f.write(“color=green電影電影 “)“) #f.write(“color=green 評分評分“)“) f.write(“color=green排排 名名“)“) #f.write(“color=green 評價人數評價人數“)“) f.write(“color=green導演導演 “)“) f.write(““)f.write(““) f.write(““)f.write(““) f.write(““)f.write(““) forfor datadata inin datas:datas: forfor i i inin range(0,range(0, 25):25): f.write(““)f.write(““) f.write(“%s“align:center'%s“ % % data['title'][i])data['title'][i]) Python 網絡爬蟲實習(報告) - 7 - # # f.write(“%s“align:center'%s“ % % data['rating_num'][i])data['rating_num'][i]) f.write(“%s“align:center'%s“ % % data['range_num'][i])data['range_num'][i]) # # f.write(“%s“align:center'%s“ % % data['rating_people_num'][i])data['rating_people_num'][i]) f.write(“%s“align:center'%s“ % % data['movie_author'][i])data['movie_author'][i]) f.write(““)f.write(““) f.write(““)f.write(““) f.write(““)f.write(““) f.write(““)f.write(““) f.write(““)f.write(““) f.write(““)f.write(““) f.close()f.close() ifif __name____name__ ==== '__main__':'__main__': datasdatas = = [][] htmlshtmls = = __getHtml()__getHtml() forfor i i inin range(len(htmls)):range(len(htmls)): datadata = = __getData(htmls[i])__getData(htmls[i]) datas.append(data)datas.append(data) Python 網絡爬蟲實習(報告) - 8 - __getMovies(datas)__getMovies(datas) 4 4 數據保存、展示數據保存、展示 結果如后圖所示: 5 技術難點關鍵點技術難點關鍵點 數據爬取實戰(搜房網爬取房屋數據)數據爬取實戰(搜房網爬取房屋數據) Python 網絡爬蟲實習(報告) - 9 - fromfrom bs4 importimport BeautifulSoup importimport requests rep = requests.get('http://newhouse.fang.com/top/''http://newhouse.fang.com/top/') rep.encoding = “gb2312““gb2312“ # 設置編碼方式 html = rep.text soup = BeautifulSoup(html, 'html.parser''html.parser') f = open('F://fang.html''F://fang.html', 'w''w',encoding='utf-8''utf-8') f.write(““““) f.write(“Insertcharset='UTF-8'Insert titletitle here“here“) f.write(““““) f.write(““新房成交新房成交 TOP3“TOP3“) f.write(““align=center“) f.write(““房址房址““) f.write(““成交量成交量““) f.write(““均價均價““) forfor li inin soup.find(“ul““ul“,class_=“ul02““ul02“).find_all(“li““li“): name=li.find(“div““div“,class_=“pbtext““pbtext“).find(“p““p“).text chengjiaoliang=li.find(“span““span“,class_=“red-f3““red-f3“).text trytry: Python 網絡爬蟲實習(報告) - 10 - junjia=li.find(“div““div“,class_=“ohter““ohter“).find(“p““p“,class_=“gray-“gray- 9“9“)#.text.replace('?O', '平方米') exceptexcept Exception asas e: junjia=li.find(“div““div“,class_=“gray-“gray- 9“9“)#.text.replace('?O', '平方米') f.write(“%s“color=red%s“ % name) f.write(“%s“color=blue%s“ % chengjiaoliang) f.write(“%s“color=green%s“ % junjia) printprint(name) f.write(““““) f.write(““““) Python 網絡爬蟲實習(報告) - 11 - 六、總結六、總結 教師評語:教師評語: 成績:成績: 指導教師:指導教師: 關?鍵?詞: python 網絡 爬蟲 實習 報告
?天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
總結
以上是生活随笔為你收集整理的python网络爬虫实践收获_python网络爬虫实习报告的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ServletConfig的详解
- 下一篇: Oracle rman备份和还原恢复数据