Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 精品在线观看国产,久久一区二区三区免费,亚洲香蕉伊在人在线观婷婷

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          python爬取高匿代理IP(再也不用擔心會進小黑屋

          python爬取高匿代理IP(再也不用擔心會進小黑屋了)


          什么要用代理IP

          很多數據網站,對于反爬蟲都做了一定的限制,這個如果寫過一些爬蟲程序的小伙伴應該都深有體會,其實主要還是IP進了小黑屋了,那么為了安全,就不能使用自己的實際IP去爬取人家網站了,這個時候,就需要采用代理IP去做這些事情……

          為什么要用高匿代理

          我們可以對比不同類型的代理的區別,根據代理的匿名程度,代理可以分為如下類別:

          • 高度匿名代理:會將數據包原封不動的轉發,在服務端看來就好像真的是一個普通客戶端在訪問,而記錄的IP則是代理服務器的IP。
          • 普通匿名代理:會在數據包上做一些改動,服務器上有可能發現這是個代理服務器,也有一定幾率追查到客戶端的真實IP。
          • 透明代理:不但改動了數據包,還會告訴服務器客戶端的真實IP。
          • 間諜代理:指組織或個人創建的用戶記錄用戶傳輸的數據,然后進行研究、監控等目的的代理服務器。

          運行環境

          Python運行環境:Windows + python3.6
          用到的模塊:requests、bs4、json
          如未安裝的模塊,請使用pip instatll xxxxxx進行安裝,例如:pip install requests

          爬取西刺代理IP



          這里,我只大概爬取西刺高匿代理50頁的數據,當然了,爬100頁,爬全部,都是可以的,就不多說了;

          def run(self):
              """執行入口"""
              page_list=range(1, 51)
              with open("ip.json", "w") as write_file:
                  for page in page_list:
                      # 分頁爬取數據
                      print('開始爬取第' + str(page) + '頁IP數據')
                      ip_url=self.base_url + str(page)
                      html=self.get_url_html(ip_url)
                      soup=BeautifulSoup(html, 'html.parser')
                      # IP列表
                      ip_list=soup.select('#ip_list .odd')
                      for ip_tr in ip_list:
                          # 單條Ip信息
                          td_list=ip_tr.select('td')
                          ip_address=td_list[1].get_text()
                          ip_port=td_list[2].get_text()
                          ip_type=td_list[5].get_text()
                          info={'ip': ip_address, 'port': ip_port, 'type': ip_type}
                          # 先校驗一下IP的有效性再存儲
                          check_res=self.check_ip(info)
                          if check_res:
                              print('IP有效:', info)
                              self.json_data.append(info)
                          else:
                              print('IP無效:', info)
                  json.dump(self.json_data, write_file)
          復制代碼

          檢測代理IP是否有效

          爬取到的代理IP可能不能用,為了方便使用的時候,不報太多異常錯誤,所以需要先檢測一下IP是否能正常使用,是否是有效代理IP,我這里列了三個網站,都可以很方便的檢測IP地址是否能有效使用

          • icanhazip.com/ 這個網站能直接返回代理的IP地址
          • www.ip.cn/ 查詢到代理的IP地址和位置信息
          • ip.chinaz.com/ 站長工具也能定位到IP地址和位置信息
          def check_ip(self, ip_info):
              """測試IP地址是否有效"""
              ip_url=ip_info['ip'] + ':' + str(ip_info['port'])
              proxies={'http': 'http://' + ip_url, 'https': 'https://' + ip_url}
              res=False
              try:
                  request=requests.get(url=self.check_url, headers=self.header, proxies=proxies, timeout=3)
                  if request.status_code==200:
                      res=True
              except Exception as error_info:
                  res=False
              return res
          復制代碼

          存儲代理IP



          我這里就不搞那些花里胡哨的,我直接把所有有效的代理IP的json格式的數據存儲到文件中,當然了,也可以存儲到MongoDB或者MySQL數據庫中,不管怎樣存儲,在使用的時候都是隨機選取一個IP,更加方便快捷。

          完整代碼

          代碼我已經上傳了GitHub(GitHub源碼地址),但是呢,作為一個熱心的搬瓦工,為了方便部分人想偷懶,不直接去交友網站查看,我在這里也貼一下源碼出來吧,如果有啥問題,最好還是去交友網站找我,請接碼……

          #!/usr/bin/env python
          # -*- coding: utf-8 -*-
          
          """
          利用requests+bs4爬取國內高匿代理IP
          author: gxcuizy
          date: 2020-06-19
          """
          
          import requests
          from bs4 import BeautifulSoup
          import json
          
          
          class GetIpData(object):
              """爬取50頁國內高匿代理IP"""
              header={'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36'}
              base_url='https://www.xicidaili.com/nn/'
              check_url='https://www.ip.cn/'
              json_data=[]
          
              def get_url_html(self, url):
                  """請求頁面html"""
                  request=requests.get(url=url, headers=self.header, timeout=5)
                  html=False
                  if request.status_code==200:
                      html=request.content
                  return html
          
              def check_ip(self, ip_info):
                  """測試IP地址是否有效"""
                  ip_url=ip_info['ip'] + ':' + str(ip_info['port'])
                  proxies={'http': 'http://' + ip_url, 'https': 'https://' + ip_url}
                  res=False
                  try:
                      request=requests.get(url=self.check_url, headers=self.header, proxies=proxies, timeout=3)
                      if request.status_code==200:
                          res=True
                  except Exception as error_info:
                      res=False
                  return res
          
              def run(self):
                  """執行入口"""
                  page_list=range(1, 51)
                  with open("ip.json", "w") as write_file:
                      for page in page_list:
                          # 分頁爬取數據
                          print('開始爬取第' + str(page) + '頁IP數據')
                          ip_url=self.base_url + str(page)
                          html=self.get_url_html(ip_url)
                          soup=BeautifulSoup(html, 'html.parser')
                          # IP列表
                          ip_list=soup.select('#ip_list .odd')
                          for ip_tr in ip_list:
                              # 單條Ip信息
                              td_list=ip_tr.select('td')
                              ip_address=td_list[1].get_text()
                              ip_port=td_list[2].get_text()
                              ip_type=td_list[5].get_text()
                              info={'ip': ip_address, 'port': ip_port, 'type': ip_type}
                              # 先校驗一下IP的有效性再存儲
                              check_res=self.check_ip(info)
                              if check_res:
                                  print('IP有效:', info)
                                  self.json_data.append(info)
                              else:
                                  print('IP無效:', info)
                      json.dump(self.json_data, write_file)
          
          
          # 程序主入口
          if __name__=='__main__':
              # 實例化
              ip=GetIpData()
              # 執行腳本
              ip.run()
          復制代碼


          最后,小編想說:我是一名python開發工程師,

          整理了一套最新的python系統學習教程,

          想要這些資料的可以關注私信小編“01”即可(免費分享哦)希望能對你有所幫助

          果您在網絡上工作,您肯定知道信息的價值,因為可靠的信息將導致安全和無憂的系統。

          當您考慮網絡掃描時,您可能會想到一些人們買不起的昂貴的商業產品。您不需要擁有這樣的程序來完成一項簡單的工作,例如從同一本地網絡中找出計算機上的開放端口。使用這些工具,您還可以準確地進行故障排除并診斷網絡問題。

          ISP使用網絡監控和診斷工具進行日常網絡管理操作,也使用流行的網絡應用程序(如點對點系統)進行性能優化。有時,各種監控和診斷技術的高開銷會限制工具的適用性。

          我們已經收集了十個便攜式網絡掃描儀工具,這些工具將派上用場。

          1.Advanced Port Scanner(高級端口掃描儀)

          相關網址:http://www.advanced-port-scanner.com/cn/

          Advanced Port Scanner

          使用高級端口掃描程序,您將能夠同時掃描數百個IP地址,但也能以最高速度掃描。該工具能夠掃描網絡計算機的端口,它可以查找和打開眾所周知的TCP端口以及它們的計算機名稱和地址。除此之外,該工具還允許您遠程關閉或喚醒特定網絡上的任何計算機。

          當您需要在特定計算機上找到任何打開的端口時,高級端口掃描程序將成為您的首選工具。該工具適用于Windows XP,Windows 7和8.1兩種版本的32位和64位。下載軟件包包括便攜式和安裝版。如果您更喜歡在不安裝機器的情況下運行該工具,那么在啟動程序后,您肯定會選擇便攜式選項。

          2.GFI LanGuard

          相關網址:https://www.gfi.com/products-and-solutions/network-security-solutions/gfi-languard

          GFI LanGuard

          此網絡安全掃描程序和修補程序管理工具充當您的虛擬安全顧問。該工具包括Windows,Mac OS和Linux的補丁管理。它還增加了智能網絡和軟件審計,計算機和移動設備的漏洞掃描以及免費支持等功能,因此您無需自行處理任何問題。

          由于補丁管理對您的業務至關重要,并且網絡安全漏洞通常是由于缺少網絡補丁引起的,因此該工具將在暴露之前掃描并檢測網絡漏洞。它還將減少從網絡中修補機器所需的時間。

          GFI LanGuard還提供了對網絡的詳細分析,其中包括存在安全風險的應用程序和默認配置。您的網絡正在進行超過60,000次漏洞評估。此工具通過漏洞檢查數據庫掃描您的操作系統,虛擬環境和所有應用程序。它將允許您分析網絡安全狀態并識別風險并解決在太晚 之前必須采取措施的方法。

          3.PortScan&Stuff

          相關網址:http://www.the-sz.com/products/portscan/

          PortScan&Stuff

          PortScan&Stuff是一款免費的便攜式網絡掃描工具,能夠識別網絡上所有現有的有源設備,還可以顯示所有開放端口和其他信息,如MAC地址,主機名,HTTP,SMB,SMTP和iSCSI,以及SNMP服務。如果涉及更大的網絡,該工具將使用多達100個線程,以加快性能。

          此工具的一個非常有用的功能是“過濾器”功能,因為它可以根據用戶的標準縮小掃描結果的范圍。例如,用戶可以在過濾器框中輕松鍵入3389,以查找已啟用遠程桌面協議的所有設備,以便遠程登錄而不會出現任何問題。

          正如它的名字所說,該工具也能夠執行更多操作,包括搜索設備,即使您不知道IP地址。您還可以在三種不同類型的ping中查找具有三個標準大小的Ping數據包的ping設備。使用此工具,您還可以通過下載和上傳各種服務器的數據來加速測試您的Internet連接。

          4.Nagios

          相關網址:https://www.nagios.org/

          Nagios

          這是一個非常強大的監控工具,可確保您的所有關鍵系統,服務和應用程序始終正常運行。該工具提供的功能包括警報,報告和事件處理。這個應用程序的核心是Nagios Core,它包含核心監控引擎和基本的Web UI。除此之外,您還可以實現插件,以便監控應用程序,服務以及指標,圖形,數據可視化附件,負載分配和MySQL數據庫支持。

          如果您想在不必安裝的情況下試用程序并從零開始配置,建議您下載Nagios Xi并啟用該工具的免費版本。Nagios XI是基于Nagios Core構建的預配置企業級版本。這是由一家商業公司打包的,該公司為您提供支持和更多功能,如高級報告和更多插件。

          Nagios XI的免費版本適用于較小的環境,它將監控最多七個節點。安裝并配置Nagios后,必須啟動Web,UI,然后才能開始配置主機組和服務組。在該工具監視指定主機和服務的狀態后,它將能夠顯示系統的運行狀況。

          Nagios的日志監控,管理和分析應用程序允許組織快速,輕松地查看機器生成的數據。該工具的Log Server旨在分析,收集和存儲基于自定義規范的日志數據。它還將為用戶提供對其網絡基礎架構中所有數據的深入了解。

          5.MiTeC’s Network Scanner

          相關網址:http://www.mitec.cz/netscan.html

          MiTeC’s Network Scanner

          MiTeC’s Network Scanner是一款免費的多線程ICMP,端口,IP,NetBIOS ActiveDirectory和SNMP掃描儀,具有各種高級功能。該工具面向系統管理員和熱衷于計算機安全性的一般用戶。該軟件能夠執行ping掃描,掃描UDP端口并打開TCP,資源共享和設備。對于具有SNMP功能的設備,程序將檢測所有可用接口,并顯示基本屬性。除此之外,您還可以編輯結果以將結果保存到CSV或從CSV加載,以及打印網絡設備列表。

          任何部分的任何信息都可以導出到CVS。該工具還可以解析主機名,它將自動檢測您的本地IP范圍。該工具提供三種不同的選項:您可以自動掃描網絡,可以掃描Active Directory,也可以根據用戶定義的適配器使用檢測到的范圍。整個掃描過程不會花費太多時間,應用程序將顯示每個IP地址以及更多有用的詳細信息,包括操作系統,CPU及其描述,MAC地址,域和用戶。

          MiTeC的網絡掃描儀可在所有Windows平臺上運行,包括服務器版本。該工具可免費用于商業和個人用途。

          該應用程序沒有附帶幫助手冊,這可能是最重要的缺點,因為用戶總是需要有關工具功能的更多文檔。

          6.OpenNMS

          相關網址:https://www.opennms.org/en

          OpenNMS

          OpenNMS是一個高度集成的開源平臺,專為構建網絡監控解決方案而設計。該工具可以檢測服務中斷,并可以通過合成輪詢來測量繪圖和閾值的延遲。它通過可配置的服務監視器為許多應用程序提供支持。它可以從用戶的角度遠程監控應用程序。該工具將使用其靈活且可擴展的體系結構來擴展服務輪詢和性能數據收集框架。OpenNMS包括用于iPhone,iPad或iPod Touch的客戶端應用程序,可以隨時隨地訪問,它使您能夠查看節點,中斷,警報以及添加監視接口。

          登錄到工具的Web UI后,您必須使用儀表板才能獲得任何通知的快速快照視圖。您可以從“狀態”下拉菜單中向下鉆取并獲取有關任何部分的更多信息。完成后,“報告”部分將允許您生成報告,然后您可以通過電子郵件發送報告,也可以下載為PDF。

          7.Capsa Free Network Analyzer

          相關網址:https://www.colasoft.com/capsa-free/

          這個免費軟件工具面向學生,教師,計算機愛好者等。它是一種網絡分析器,允許用戶監控網絡流量,解決網絡問題并分析數據包。其功能包括支持300多種網絡協議,以及創建和自定義協議的能力。

          該工具是用于以太網監控,分析和故障排除的必備網絡分析儀。它將為您提供豐富的經驗,以學習如何監控網絡活動,查明網絡問題,提高網絡安全性等。這是學習協議和網絡技術的學生的理想選擇。

          該工具將為您提供自己的儀表板,所有重要參數將位于一個位置。它可以記錄您的網絡配置文件,設置分析目標并執行自定義分析。

          8.PRTG Network Monitor Freeware

          相關網址:https://www.paessler.com/download/prtg-download

          PRTG Network Monitor Freeware

          此工具使用各種協議(如WMI,Netflow和SNMP)監視網絡可用性和網絡使用情況。這是一個功能強大的工具,能夠提供易于使用的界面,基于網絡和Android和iOS的應用程序。PRTG提供全面的網絡監控,為應用監控,QoS監控,SLA監控和虛擬服務器監控提供超過170種傳感器類型。

          其靈活的警報功能包括9種不同的通知方法,限制警報,狀態警報,閾值警報,警報計劃和條件警報。該工具具有深入的報告功能,能夠以HTML / PDF格式,預定義報告,報告模板和計劃報告創建報告。您應該知道此工具的免費軟件版本僅限于10個傳感器。

          啟動該工具后,您必須直接進入配置向導才能開始使用。這將指導您完成啟動和運行應用程序所需的基本配置設置,它將包括向監視器添加服務器以及您必須使用的所需傳感器。

          9.The Dude

          相關網址:https://mikrotik.com/thedude

          The Dude

          Dude網絡監視器是MikroTik的新應用程序,它可以顯著提高您管理網絡環境的方式的質量。這將自動掃描指定子網內的所有設備,它將繪制網絡的布局圖,它將監視您設備的服務,并在您的某些服務出現問題時提醒您。

          該工具提供自動網絡發現和布局,并能夠發現任何類型或品牌的設備。它包括設備的SVG圖標,它還支持自定義圖標和背景。該應用程序易于安裝,非常易于使用。更重要的是,它允許您繪制自己的地圖并添加自定義設備,還可以直接訪問用于設備管理的遠程控制工具。

          它支持遠程Dude服務器和本地客戶端,它在Linux Wine環境,Windows和MacOS Darwine中運行。

          10.Xirrus Wi-Fi Inspector

          相關網址:https://www.riverbed.com/products/xirrus/index.html

          Xirrius Wi-Fi Inspector是一種工具,可用于搜索Wi-Fi網絡,管理和排除連接故障,驗證Wi-Fi覆蓋范圍,定位Wi-Fi設備以及檢測惡意接入點。

          它提供有關其檢測到的每個網絡的詳細信息,包括網絡SSID,信號強度,網絡模式,加密類型,頻率和信道。

          該工具的下載量超過100萬,已成為幫助全球各地組織快速,輕松地了解其網絡的標準。該計劃旨在提供無線網絡狀態的實時監控。該工具將確保您獲得無線網絡提供的最高性能。

          Wi-Fi Inspector的UI包括各種模式,例如顯示最近網絡的雷達視圖,所有網絡及其詳細信息的視圖以及歷史視圖。

          該工具被許可為Windows免費軟件,所有軟件用戶都可以免費下載。

          我們提供了這些工具,試圖讓您的生活更輕松。他們都將設法監控設備,服務,端口和協議,他們還將分析網絡上的流量。全部檢查,我們向您保證,您將在上述工具中找到至少一顆或兩顆寶石。

          最近需要在web項目中顯示監控視頻,采用了webrtc+webrtc-streamer+coturn的方案實現,能夠在公網上做很低的延時,對于實時監控視頻有很好的效果,是目前來講比較好的一個選擇方案。

          1、webrtc 用于視頻流的顯示。

          2、webrtc-streamer負責去監控視頻主機(這里多數是NVR或DVR)去拉取RSTP視頻流,并轉發到Webrtc中進行顯示。

          3、coturn用于webrtc與webrtc-streamer之間的通信穿透服務,主要作用是穿透做NAT穿透,讓雙方找到能互相找到。

          網絡邏輯結構圖

          一、webrtc-streamer安裝

          這里采用的是CentOS 7系統,直接采用的Docker安裝,關于Docker安裝可以參考《Kubernetes安裝記錄》的docker部分。

          docker pull mpromonet/webrtc-streamer
          docker run -itd -p 8000:8000 --name webrtc-streamer mpromonet/webrtc-streamer -s120.92.19.150:3478 -tnoka:noka@120.92.19.150:3478

          這里后面的-t和-s參數分別指向cotum的strun和tun服務,這里同內一定要用自己搭建的穿透服務,webrtc-streamer內置的服務是指向goole提供的一個服務,國內訪問及其不穩定,關于cotum的安裝請參照官網。這里啟動好以后,就可以通過瀏覽器訪問8000端口的服務了,這里可以通過以下地址來驗證視頻流服是否成功。

          http://ip:8000/webrtcstreamer.html?rtsp://admin:admin@ip:554/Streaming/Channels/101

          如果上面的地址能播放視頻,說明配置成功了,地址后面的參數是視頻流的地址。

          二、web端視頻顯示代碼

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF-8">
              <title>Title</title>
              <!-- webrtc公用庫-->
              <script src="/js/adapter.js"></script>
              <!-- webrtc-streamer調用庫,來自webrtc-streamer-->
              <script src="/js/webrtcstreamer.js"></script>
          </head>
          <body>
          <!-- 視頻顯示部分 -->
          <div id="play_div"></div>
          <script>
              var webRtcServerList=[];//視頻流服務對象部分
              var urls=[
                  'rtsp://admin:HUAN1415@192.168.1.106:554/Streaming/Channels/102',//視頻流地址
                  'rtsp://admin:HUAN1415@210.201.225.44:554/Streaming/Channels/202'//視頻流地址
              ];
              var rsurl='http://210.201.225.42:8000/';//webrtc-streamer服務地址
              //---------創建視頻播放界面--------------------------------------------------------
              function plays(idx){
                  var videoelt=document.createElement("video");//創建一個播放器
                  var vi_tag='videoTag_'+idx;//播放器的id
                  videoelt.id=vi_tag;//播放器id
                  videoelt.muted=true;
                  videoelt.width=500;
                  videoelt.height=600;
                  videoelt.controls=true;//開啟進度條
                  document.getElementById ("play_div").appendChild(videoelt);//添加播放器到界面中
                  var webRtcServer=new WebRtcStreamer(vi_tag,rsurl);//創建webrtc流對象
                  //連接視頻,參數1 視頻地址,參數2 音頻地址(這里沒有),參數3 連接參數(這里采用的是tcp,120秒超時等)
                  webRtcServer.connect(urls[idx],undefined,"rtptransport=tcp&timeout=120&width=320&height=0");
                  webRtcServerList[idx]=webRtcServer;//緩存視頻流對象
              }
              //----------頁面退出時關閉播放流---------------------
              window.onbeforeunload=function() {
                  for(var i=0;i<webRtcServerList.length;i++){
                      webRtcServerList[i].disconnect();
                  }
              }
              //---------初始化加載視頻----------------------------
              window.onload=function() {
                  for(var i=0;i<urls.length;i++){
                      plays(i);
                  }
              }
          </script>
          </body>
          </html>

          這樣就完成了整個項目實現,這里如果視頻沒有播放成功,最有可能是穿透服務的問題,需要檢查穿透服務。


          主站蜘蛛池模板: 国产一区三区三区| 亚洲国产精品一区二区三区久久| 亚洲欧美日韩一区二区三区在线| 精品国产一区二区三区www| 免费日本一区二区| 亚洲av午夜精品一区二区三区| 国产成人精品无码一区二区三区| 国产乱码精品一区二区三| 久久精品无码一区二区三区不卡| 久久精品无码一区二区WWW| 高清一区二区三区免费视频| 手机看片福利一区二区三区| 日本中文一区二区三区亚洲| 福利一区二区三区视频午夜观看| 国产成人一区二区三区| 亚洲综合一区国产精品| 无码人妻AV免费一区二区三区| 色窝窝免费一区二区三区| 无码少妇一区二区三区| 无码人妻一区二区三区在线视频 | 久久精品免费一区二区| 无码人妻精品一区二区三区东京热 | 亚洲一区二区三区在线网站 | 日本一区视频在线播放| 国产日韩精品一区二区三区| 日本福利一区二区| 一区二区三区在线播放| 久久国产精品免费一区| 国产一区二区三区视频在线观看| 国产天堂在线一区二区三区| 视频一区二区中文字幕| 变态拳头交视频一区二区 | 一区二区三区在线看| 欧洲精品一区二区三区| 国产精品美女一区二区| 国产精品毛片a∨一区二区三区| 亚洲一区二区三区无码影院| 精品在线一区二区| 亚洲高清偷拍一区二区三区 | 精品一区二区三区四区在线播放| 99热门精品一区二区三区无码|