999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺析Python網絡爬蟲

2019-09-10 07:22:44陳超
教育周報·教育論壇 2019年46期
關鍵詞:信息

陳超

網絡爬蟲(Web Spider)又稱網絡蜘蛛、網絡機器人,是一段用來自動化采集網站數據的程序。如果把互聯網比喻成一個蜘蛛網,那么Spider就是在網上爬來爬去的蜘蛛。Python適用于網站、桌面應用開發,自動化腳本,復雜計算系統,科學計算,生命支持管理系統,物聯網,游戲,機器人,自然語言處理等很多方面。本文簡要介紹對于定向信息采集所需了解基本知識和相關技術,以及python中與此相關的庫,同時提供對與數據抓取有關庫的封裝實現。

一、應用場景

爬蟲技術在科學研究、Web安全、產品研發、輿情監控等領域可以做很多事情。如:在數據挖掘、機器學習、圖像處理等科學研究領域,如果沒有數據,則可以通過爬蟲從網上抓取;在Web安全方面,使用爬蟲可以對網站是否存在某一漏洞進行批量驗證、利用;在產品研發方面,可以采集各個商城物品價格,為用戶提供市場最低價;在輿情監控方面,可以抓取、分析微博的數據,從而識別出某用戶是否為水軍。

二、運行流程

對于定向信息的爬取,爬蟲主要包括數據抓取、數據解析、數據入庫等操作流程。其中:(1)數據抓?。喊l送構造的HTTP請求,獲得包含所需數據的HTTP響應;

(2)數據解析:對HTTP響應的原始數據進行分析、清洗以提取出需要的數據;

(3)數據入庫:將數據進一步保存到數據庫(或文本文件),構建知識庫。

三、相關技術

爬蟲的相關技術包括:

(1)數據抓?。毫私釮TTP請求和響應中各字段的含義;了解相關的網絡分析工具,主要用于分析網絡流量,如:burpsuit等。一般情況,使用瀏覽器的開發者模式即可;

(2)數據解析:了解HTML結構、JSON和XML數據格式,CSS選擇器、Xpath路徑表達式、正則表達式等,目的是從響應中提取出所需的數據;

(3)數據入庫:MySQL,SQLite、Redis等數據庫,便于數據的存儲;

以上是學習爬蟲的基本要求,在實際的應用中,也應考慮如何使用多線程提高效率、如何做任務調度、如何應對反爬蟲,如何實現分布式爬蟲等等。

四、python相關庫

在爬蟲實現上,除了scrapy框架之外,python有許多與此相關的庫可供使用。其中,在數據抓取方面包括:urllib2(urllib3)、requests、mechanize、selenium、splinter;在數據解析方包括:lxml、beautifulsoup4、re、pyquery。

對于數據抓取,涉及的過程主要是模擬瀏覽器向服務器發送構造好的http請求,常見類型有:get/post。其中,urllib2(urllib3)、requests、mechanize用來獲取URL對應的原始響應內容;而selenium、splinter通過加載瀏覽器驅動,獲取瀏覽器渲染之后的響應內容,模擬程度更高。

具體選擇哪種類庫,應根據實際需求決定,如考慮效率、對方的反爬蟲手段等。通常,能使用urllib2(urllib3)、requests、mechanize等解決的盡量不用selenium、splinter,因為后者因需要加載瀏覽器而導致效率較低。

對于數據解析,主要是從響應頁面里提取所需的數據,常用方法有:xpath路徑表達式、CSS選擇器、正則表達式等。其中,xpath路徑表達式、CSS選擇器主要用于提取結構化的數據,而正則表達式主要用于提取非結構化的數據。相應的庫有lxml、beautifulsoup4、re、pyquery。

五、反爬蟲

1. 基本的反爬蟲手段,主要是檢測請求頭中的字段,比如:User-Agent、referer等。針對這種情況,只要在請求中帶上對應的字段即可。所構造http請求的各個字段最好跟在瀏覽器中發送的完全一樣,但也不是必須。

2. 基于用戶行為的反爬蟲手段,主要是在后臺對訪問的IP(或User-Agent)進行統計,當超過某一設定的閾值,給予封鎖。針對這種情況,可通過使用代理服務器解決,每隔幾次請求,切換一下所用代理的IP地址(或通過使用User-Agent列表解決,每次從列表里隨機選擇一個使用)。這樣的反爬蟲方法可能會誤傷用戶。

3. 希望抓取的數據是如果通過ajax請求得到的,假如通過網絡分析能夠找到該ajax請求,也能分析出請求所需的具體參數,則直接模擬相應的http請求,即可從響應中得到對應的數據。這種情況,跟普通的請求沒有什么區別。

4. 基于JavaScript的反爬蟲手段,主要是在響應數據頁面之前,先返回一段帶有JavaScript代碼的頁面,用于驗證訪問者有無JavaScript的執行環境,以確定使用的是不是瀏覽器。

六、結論

網絡爬蟲不僅能夠為搜索引擎采集網絡信息,而且還可以作為定向信息采集器,定向采集某些網站下的特定信息。而隨著近幾年來的發展,python的受歡迎度也越來越高,而它的運用的領域也是越來越多,比如人工智能和大數據等領域,python都是在其中扮演者重要的角色。

[1] 《Python程序設計與算法基礎教程》. 江紅,余青松 主編. 清華大學出版社. 2018

[2] 《Python成型設計案例教程——從入門到機器學習》. 張思民 編著. 清華大學出版社. 2018

[3] 基于Python的網絡爬蟲技術[J]. 錢程,陽小蘭.黑龍江科技信息. 2016,36:273

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 全部免费特黄特色大片视频| av在线无码浏览| 日韩精品一区二区三区视频免费看| 国产成人成人一区二区| 色婷婷啪啪| 乱系列中文字幕在线视频| 亚洲成人www| 国产爽歪歪免费视频在线观看| 欧美成人精品高清在线下载| 国产精品嫩草影院视频| 精品第一国产综合精品Aⅴ| 亚洲国产精品无码AV| 99手机在线视频| 免费看av在线网站网址| 久久久成年黄色视频| 亚洲自拍另类| 久久国产精品电影| 精品久久久久无码| 爆乳熟妇一区二区三区| 国模私拍一区二区| 亚洲AV永久无码精品古装片| 男女性午夜福利网站| 中文无码伦av中文字幕| 91精品国产自产在线老师啪l| 黑色丝袜高跟国产在线91| 国产成人高清亚洲一区久久| 亚洲水蜜桃久久综合网站| 一级毛片网| 99无码中文字幕视频| 国产精品自在自线免费观看| 亚洲欧美日韩久久精品| 永久免费无码成人网站| 国产一区亚洲一区| 欧美一区二区自偷自拍视频| 毛片久久网站小视频| 人人爽人人爽人人片| 四虎国产精品永久一区| 免费看a级毛片| 欧美亚洲国产精品第一页| 亚洲欧美成人在线视频| 美女无遮挡免费视频网站| 99这里只有精品6| 狠狠色噜噜狠狠狠狠奇米777| 人妻一本久道久久综合久久鬼色| 9cao视频精品| 久久久久久高潮白浆| 丁香五月激情图片| 国产欧美日韩另类精彩视频| 精品国产欧美精品v| 久久精品中文字幕免费| 国产亚洲视频在线观看| 综合色亚洲| 在线不卡免费视频| 亚洲av无码成人专区| 日本www在线视频| 无码区日韩专区免费系列| 91网站国产| 亚洲国产成人在线| 国产91精品久久| 国产在线观看一区二区三区| 国产一区二区精品福利| 亚洲精品成人片在线观看| 九色视频在线免费观看| 欧美天天干| 久草热视频在线| 国产91精品调教在线播放| 国产靠逼视频| 欧美在线导航| 欧美精品另类| 成人福利在线免费观看| 成人毛片免费在线观看| 99一级毛片| 成人另类稀缺在线观看| www.国产福利| 国产一区二区三区免费| 国产高清又黄又嫩的免费视频网站| 国产久草视频| 国产精品女人呻吟在线观看| 国产日韩AV高潮在线| 狠狠做深爱婷婷综合一区| 中文字幕首页系列人妻| 国产sm重味一区二区三区|