XPathは西とげエージェントをクロール使い方

もちろんScrapyので、エキスのページ情報より便利に物品に、その後のXPathを使用し、します。

Bは、XPathの導入に駅を見て:https://www.bilibili.com/video/av30320885?from=search&seid=17721548966745663758

 

理解のXPath

  1. XPathは何ですか

    1、XMLの言語の構文解析は、(XMLのHTMLは、実際に子供である)、広くHTMLデータを解析するために使用されます

    2、ほとんどすべての言語は、JavaやC言語など、XPathを使用することができます

    BeautifulSoup、lxmlの、DOM、SAX、JSDOM、DOM4J、minixml等:のようなXML構文解析するための他の手段のXPathに加えて、3、

  2、XPathの構文

    実際にはXPath構文、唯一の三つのカテゴリー

    1、階層:/直接の子、//スキップ

    2、[プロパティ:@プロパティへのアクセス

    3、機能は:)(テキスト()、などが含まれています

 

XPathを使用して

  1、ブラウザでのXPathの使用

  同様に、私は西のとげエージェントをクロールしたかったので程度だったが、ビデオ、との直接プロキシサイトとげ西の分析ので

  https://www.xicidaili.com/nn/1

  

 

   簡単な分析ページの後

  

 

   そこの2つのIPが発見され、1は、<TRクラス= "奇妙"> ... </ TR>ここで別の<trクラス> ... </ TR>であります

  (最初のものであるので、最初の添加を除いしかしTRノードです

  しかし、ルートレベルからの差のtrタグの多くは、私たちは、// trの使用します

  

 

   あなたはそれが青色のボックスで、最初があり、101は、100がIPの数である見ることができます。

  TR内部には詳細な分析

  

 

   里面有几个td节点,ip在第二个td节点,port在第三个td节点,type在第四个td节点,这几个是我们所需要的,同级之下的提取视频里面没有讲,所以我去查了一下,可以使用//tr/td[2]来获取ip

  

 

   可以看到这里是100个搜索结果,即100个ip,同样的方法获取port和type即可

 

  2,在Scrapy中使用XPath

  我们获取到了之后,在scrapy中整理输出第一页的代理ip,在spider爬取页面里写成:

  

 

   可以看到输出了100个IP地址:

  

 

   当然在爬取之前要将scrapy的User-Agent设置好,还有robots.txt协议也要设置,才开始爬取,不然只会获取到空的结果。

  这个只是第一页的IP地址,验证IP和储存IP,反爬等都还没有处理,剩下的下次另写一篇吧

 

おすすめ

転載: www.cnblogs.com/Cl0ud/p/12322760.html