奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > Python爬蟲入門,8個常用爬蟲技巧盤點

Python爬蟲入門,8個常用爬蟲技巧盤點

來源:奇酷教育 發表于:

Python爬蟲入門,8個常用爬蟲技巧盤點。

  編程對于任何一個新手來說都不是一件容易的事情,Python對于任何一個想學習的編程的人來說的確是一個福音,閱讀Python代碼像是在閱讀文章,源于Python語言提供了非常優雅的語法,被稱為最優雅的語言之一。
 
  python入門時
 
  用得最多的還是各類爬蟲腳本,
 
  寫過抓代理本機驗證的腳本、寫過論壇中自動登錄自動發貼的腳本
 
  寫過自動收郵件的腳本、寫過簡單的驗證碼識別的腳本。
 
  這些腳本有一個共性,都是和web相關的,
 
  8個常用爬蟲技巧盤點和大家分享:
 
 
  1、基本抓取網頁
 
  get方法
 
  post方法
 
  2.使用代理服務器
 
  這在某些情況下比較有用,
 
  比如IP被封了,或者比如IP訪問的次數受到限制等等。
 
  3.Cookies處理
 
  是的沒錯,如果想同時用代理和cookie,
 
  那就加入proxy_support然后operner改為 ,如下:
 
  4.偽裝成瀏覽器訪問
 
  某些網站反感爬蟲的到訪,于是對爬蟲一律拒絕請求。
 
  這時候我們需要偽裝成瀏覽器,
 
  這可以通過修改http包中的header來實現:
 
  5、頁面解析
 
  對于頁面解析最強大的當然是正則表達式,
 
  這個對于不同網站不同的使用者都不一樣,就不用過多的說明。
 
  其次就是解析庫了,常用的有兩個lxml和BeautifulSoup。
 
  對于這兩個庫,我的評價是,
 
  都是HTML/XML的處理庫,Beautifulsoup純python實現,效率低,
 
  但是功能實用,比如能用通過結果搜索獲得某個HTML節點的源碼;
 
  lxmlC語言編碼,高效,支持Xpath。
 
  6.驗證碼的處理
 
  碰到驗證碼咋辦?
 
  這里分兩種情況處理:
 
  google那種驗證碼,沒辦法。
 
  簡單的驗證碼:字符個數有限,只使用了簡單的平移或旋轉加噪音而沒有扭曲的,
 
  這種還是有可能可以處理的,一般思路是旋轉的轉回來,噪音去掉,
 
  然后劃分單個字符,劃分好了以后再通過特征提取的方法(例如PCA)降維并生成特征庫,
 
  然后把驗證碼和特征庫進行比較。
 
  這個比較復雜,這里就不展開了,
 
  具體做法請弄本相關教科書好好研究一下。
 
  7. gzip/deflate支持
 
  現在的網頁普遍支持gzip壓縮,這往往可以解決大量傳輸時間,
 
  以VeryCD的主頁為例,未壓縮版本247K,壓縮了以后45K,為原來的1/5。
 
  這就意味著抓取速度會快5倍。
 
  然而python的urllib/urllib2默認都不支持壓縮
 
  要返回壓縮格式,必須在request的header里面寫明’accept-encoding’,
 
  然后讀取response后更要檢查header查看是否有’content-encoding’一項來判斷是否需要解碼,很繁瑣瑣碎。
 
  如何讓urllib2自動支持gzip, defalte呢?
 
  其實可以繼承BaseHanlder類,
 
  然后build_opener的方式來處理:
 
  8、多線程并發抓取
 
  單線程太慢的話,就需要多線程了,
 
  這里給個簡單的線程池模板 這個程序只是簡單地打印了1-10,
 
  但是可以看出是并發的。
 
  雖然說Python的多線程很雞肋
 
  但是對于爬蟲這種網絡頻繁型,
 
  還是能一定程度提高效率的。
 
  9. 總結
 
  閱讀Python編寫的代碼感覺像在閱讀英語一樣,這讓使用者可以專注于解決問題而不是去搞明白語言本身。
 
  Python雖然是基于C語言編寫,但是摒棄了C中復雜的指針,使其變得簡明易學。
 
  并且作為開源軟件,Python允許對代碼進行閱讀,拷貝甚至改進。
 
  這些性能成就了Python的高效率,有“人生苦短,我用Python”之說,是一種十分精彩又強大的語言。
 
  總而言之,開始學Python一定要注意這4點:
 
  1.代碼規范,這本身就是一個非常好的習慣,如果開始不養好好的代碼規劃,以后會很痛苦。
 
  2.多動手,少看書,很多人學Python就一味的看書,這不是學數學物理,你看例題可能就會了,學習Python主要是學習編程思想。
 
  3.勤練習,學完新的知識點,一定要記得如何去應用,不然學完就會忘,學我們這行主要都是實際操作。
 
  4.學習要有效率,如果自己都覺得效率非常低,那就停不停,找一下原因,去問問過來人這是為什么。
主站蜘蛛池模板: 衬塑管道_衬四氟管道厂家-淄博恒固化工设备有限公司 | 减速机三参数组合探头|TSM803|壁挂式氧化锆分析仪探头-安徽鹏宸电气有限公司 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 综合管廊模具_生态,阶梯护坡模具_检查井模具制造-致宏模具厂家 | 智能监控-安防监控-监控系统安装-弱电工程公司_成都万全电子 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 深圳市东信高科自动化设备有限公司 | 磁力抛光研磨机_超声波清洗机厂家_去毛刺设备-中锐达数控 | 定量包装秤,吨袋包装称,伸缩溜管,全自动包装秤,码垛机器人,无锡市邦尧机械工程有限公司 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 云南成人高考_云南成考网| 服务器之家 - 专注于服务器技术及软件下载分享 | 培训中心-翰香原香酥板栗饼加盟店总部-正宗板栗酥饼技术 | 北京自然绿环境科技发展有限公司专业生产【洗车机_加油站洗车机-全自动洗车机】 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 武汉天安盾电子设备有限公司 - 安盾安检,武汉安检门,武汉安检机,武汉金属探测器,武汉测温安检门,武汉X光行李安检机,武汉防爆罐,武汉车底安全检查,武汉液体探测仪,武汉安检防爆设备 | 碳钢法兰厂家,非标法兰,定制异型,法兰生产厂家-河北九瑞管道 | 行业分析:提及郑州火车站附近真有 特殊按摩 ?2025实地踩坑指南 新手如何避坑不踩雷 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 海日牌清洗剂-打造带电清洗剂、工业清洗剂等清洗剂国内一线品牌 海外整合营销-独立站营销-社交媒体运营_广州甲壳虫跨境网络服务 | 首页-恒温恒湿试验箱_恒温恒湿箱_高低温试验箱_高低温交变湿热试验箱_苏州正合 | 岸电电源-60HZ变频电源-大功率变频电源-济南诚雅电子科技有限公司 | 高精度电阻回路测试仪-回路直流电阻测试仪-武汉特高压电力科技有限公司 | 活性炭-蜂窝-椰壳-柱状-粉状活性炭-河南唐达净水材料有限公司 | 玻璃钢板-玻璃钢防腐瓦-玻璃钢材料-广东壹诺 | 恒温振荡混匀器-微孔板振荡器厂家-多管涡旋混匀器厂家-合肥艾本森(www.17world.net) | 防水套管|柔性防水套管|伸缩器|伸缩接头|传力接头-河南伟创管道 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 飞象网 - 通信人每天必上的网站 全球化工设备网—化工设备,化工机械,制药设备,环保设备的专业网络市场。 | 锂电池砂磨机|石墨烯砂磨机|碳纳米管砂磨机-常州市奥能达机械设备有限公司 | 首页_中夏易经起名网| 济南侦探调查-济南调查取证-山东私家侦探-山东白豹调查咨询公司 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 欧必特空气能-商用空气能热水工程,空气能热水器,超低温空气源热泵生产厂家-湖南欧必特空气能公司 | 卫生人才网-中国专业的医疗卫生医学人才网招聘网站! | 石家庄网站建设|石家庄网站制作|石家庄小程序开发|石家庄微信开发|网站建设公司|网站制作公司|微信小程序开发|手机APP开发|软件开发 | 小型铜米机-干式铜米机-杂线全自动铜米机-河南鑫世昌机械制造有限公司 | 优考试_免费在线考试系统_培训考试系统_题库系统_组卷答题系统_匡优考试 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 百方网-百方电气网,电工电气行业专业的B2B电子商务平台 | 清水混凝土修复_混凝土色差修复剂_混凝土色差调整剂_清水混凝土色差修复_河南天工 | 仪器仪表网 - 永久免费的b2b电子商务平台 | 上海诺狮景观规划设计有限公司 |