电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

用sleep間隔進行python反爬蟲的實例講解

瀏覽:5日期:2022-07-03 16:14:27

在找尋材料的時候,會看到一些暫時用不到但是內容不錯的網頁,就這樣關閉未免浪費掉了,下次也不一定能再次搜索到。有些小伙伴會提出可以保存網頁鏈接,但這種基本的做法并不能在網頁打不開后還能看到內容。我們完全可以用爬蟲獲取這方面的數據,不過操作過程中會遇到一些阻攔,今天小編就教大家用sleep間隔進行python反爬蟲,這樣就可以得到我們想到的數據啦。

步驟

要利用headers拉動請求,模擬成瀏覽器去訪問網站,跳過最簡單的反爬蟲機制。

獲取網頁內容,保存在一個字符串content中。

構造正則表達式,從content中匹配關鍵詞pattern獲取下載鏈接。需要注意的是,網頁中的關鍵詞出現了兩遍(如下圖),所以我們要利用set()函數清除重復元素。

第三步是遍歷set之后的結果,下載鏈接。

設置time.sleep(t),無sleep間隔的話,網站認定這種行為是攻擊,所以我們隔一段時間下載一個,反反爬蟲。

具體代碼

import urllib.request# url requestimport re # regular expressionimport os # dirsimport time’’’url 下載網址pattern 正則化的匹配關鍵詞Directory 下載目錄def BatchDownload(url,pattern,Directory): # 拉動請求,模擬成瀏覽器去訪問網站->跳過反爬蟲機制 headers = {’User-Agent’, ’Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36’} opener = urllib.request.build_opener() opener.addheaders = [headers] # 獲取網頁內容 content = opener.open(url).read().decode(’utf8’) # 構造正則表達式,從content中匹配關鍵詞pattern raw_hrefs = re.findall(pattern, content, 0) # set函數消除重復元素 hset = set(raw_hrefs) # 下載鏈接 for href in hset: # 之所以if else 是為了區(qū)別只有一個鏈接的特別情況 if(len(hset)>1): link = url + href[0] filename = os.path.join(Directory, href[0]) print('正在下載',filename) urllib.request.urlretrieve(link, filename) print('成功下載!') else: link = url +href filename = os.path.join(Directory, href) # 無sleep間隔,網站認定這種行為是攻擊,反反爬蟲 time.sleep(1) #BatchDownload(’https://www1.ncdc.noaa.gov/pub/data/swdi/stormevents/csvfiles/’,# ’(Storm-Data-Export-Format.docx)’,# ’E:stormeventscsvfiles’) # ’(Storm-Data-Export-Format.pdf)’,# ’(StormEvents_details-ftp_v1.0_d(d*)_c(d*).csv.gz)’,# ’(StormEvents_fatalities-ftp_v1.0_d(d*)_c(d*).csv.gz)’,# ’(StormEvents_locations-ftp_v1.0_d(d*)_c(d*).csv.gz)’,#BatchDownload(’https://www1.ncdc.noaa.gov/pub/data/swdi/stormevents/csvfiles/legacy/’,# ’(ugc_areas.csv)’,# ’E:stormeventscsvfileslegacy’)結果展示

為了讓大家能夠清楚的知道整個反爬過程,這里小編把思路和代碼都羅列了出來。其中可以time.sleep(t)解除網站對于爬蟲的阻攔問題,著重標記了出來

用sleep間隔進行python反爬蟲的實例講解

到此這篇關于用sleep間隔進行python反爬蟲的實例講解的文章就介紹到這了,更多相關如何使用sleep間隔進行python反爬蟲內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 利浦顿蒸汽发生器厂家-电蒸汽发生器/燃气蒸汽发生器_湖北利浦顿热能科技有限公司官网 | 太原装修公司_山西整装家装设计_太原室内装潢软装_肖邦家居 | 超高频感应加热设备_高频感应电源厂家_CCD视觉检测设备_振动盘视觉检测设备_深圳雨滴科技-深圳市雨滴科技有限公司 | 砂磨机_立式纳米砂磨机_实验室砂磨机-广州儒佳化工设备厂家 | 煤棒机_增碳剂颗粒机_活性炭颗粒机_木炭粉成型机-巩义市老城振华机械厂 | 银川美容培训-美睫美甲培训-彩妆纹绣培训-新娘化妆-学化妆-宁夏倍莱妮职业技能培训学校有限公司 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 武汉不干胶印刷_标签设计印刷_不干胶标签印刷厂 - 武汉不干胶标签印刷厂家 | 沈飞防静电地板__机房地板-深圳市沈飞防静电设备有限公司 | 地磅-电子地磅维修-电子吊秤-汽车衡-无人值守系统-公路治超-鹰牌衡器 | 液压中心架,数控中心架,自定心中心架-烟台恒阳机电设计有限公司 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 | EFM 022静电场测试仪-套帽式风量计-静电平板监测器-上海民仪电子有限公司 | 塑料薄膜_PP薄膜_聚乙烯薄膜-常州市鑫美新材料包装厂 | 全自动包衣机-无菌分装隔离器-浙江迦南科技股份有限公司 | 玉米加工设备,玉米深加工机械,玉米糁加工设备.玉米脱皮制糁机 华豫万通粮机 | 北京印刷厂_北京印刷_北京印刷公司_北京印刷厂家_北京东爵盛世印刷有限公司 | 北京遮阳网-防尘盖土网-盖土草坪-迷彩网-防尘网生产厂家-京兴科技 | 首页-恒温恒湿试验箱_恒温恒湿箱_高低温试验箱_高低温交变湿热试验箱_苏州正合 | 酒吧霸屏软件_酒吧霸屏系统,酒吧微上墙,夜场霸屏软件,酒吧点歌软件,酒吧互动游戏,酒吧大屏幕软件系统下载 | 电梯装饰-北京万达中意电梯装饰有限公司| 工业洗衣机_工业洗涤设备_上海力净工业洗衣机厂家-洗涤设备首页 bkzzy在职研究生网 - 在职研究生招生信息咨询平台 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 超声波清洗机_细胞破碎仪_实验室超声仪器_恒温水浴-广东洁盟深那仪器 | 管理会计网-PCMA初级管理会计,中级管理会计考试网站 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 辊道窑炉,辊道窑炉厂家-山东艾希尔 | 压砖机_电动螺旋压力机_粉末成型压力机_郑州华隆机械tel_0371-60121717 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 桁架楼承板-钢筋桁架楼承板-江苏众力达钢筋楼承板厂 | 【北京写字楼出租_写字楼租赁_办公室出租网/出售】-远行地产官网 | 急救箱-应急箱-急救包厂家-北京红立方医疗设备有限公司 | 健身器材-健身器材厂家专卖-上海七诚健身器材有限公司 | 铝合金重力铸造_铝合金翻砂铸造_铝铸件厂家-东莞市铝得旺五金制品有限公司 | 船用泵,船用离心泵,船用喷射泵,泰州隆华船舶设备有限公司 | 山东信蓝建设有限公司官网| 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 二次元影像仪|二次元测量仪|拉力机|全自动影像测量仪厂家_苏州牧象仪器 | 薪动-人力资源公司-灵活用工薪资代发-费用结算-残保金优化-北京秒付科技有限公司 | 聚氨酯保温钢管_聚氨酯直埋保温管道_聚氨酯发泡保温管厂家-沧州万荣防腐保温管道有限公司 |