摘要:學習網站麥子第九集的定義的編寫作用生成初始的定義空集設置變量頁碼到生成的放到中返回提取每一行的位置提取標簽下的屬性變量加入標簽定義空集的從以后開始加載取文字取文字取到的屬性,再用正則匹配到數字把添加到項目返回項目保存成結果輸出
學習網站:麥子scrapy第九集
1.item.py的定義import scrapy class XiciItem(scrapy.Item): IP=scrapy.Field() PORT=scrapy.Field() POSITION=scrapy.Field() TYPE=scrapy.Field() SPEED=scrapy.Field() LAST_CHECK_TIME=scrapy.Field()2.spider的編寫
# -*- coding: utf-8 -*- import scrapy from XiCi.items import XiciItem class XiciSpider(scrapy.Spider): name = "xici" allowed_domains = ["xicidaili.com"] start_urls = ( "http://www.xicidaili.com", ) def start_requests(self):#作用:生成初始的request reqs=[]#定義resqs(空集) for i in range(1,206):#設置變量:頁碼1到206 req=scrapy.Request("http://www.xicidaili.com/nn/%s"%i) reqs.append(req)#生成的request放到resqs中 return reqs#返回reqs def parse(self, response): #提取每一行的xpath位置 ip_list=response.xpath("http://table[@id="ip_list"]")#ip_list=xpath提取(table標簽下的"ip_list"屬性) trs = ip_list[0].xpath("tr")#變量trs=ip_list加入tr標簽 items=[]#定義items空集 for ip in trs[1:]:#ip的tr從[1以后開始] pre_item=XiciItem()#pre_item=加載XiCiItem() pre_item["IP"] = ip.xpath("td[3]/text()")[0].extract()#取文字 pre_item["PORT"] = ip.xpath("td[4]/text()")[0].extract()#取文字 pre_item["POSITION"] = ip.xpath("string(td[5])")[0].extract().strip() pre_item["TYPE"] = ip.xpath("td[7]/text()")[0].extract() #speed取到td的title屬性,再用正則(匹配到數字) pre_item["SPEED"] = ip.xpath( "td[8]/div[@class="bar"]/@title").re("d{0,2}.d{0,}")[0] pre_item["LAST_CHECK_TIME"] = ip.xpath("td[10]/text()")[0].extract() items.append(pre_item)#把pre_item添加到項目 return items#返回項目3.保存成csv
scrapy crawl xici -o xici.csv4.結果輸出
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44163.html
摘要:爬蟲實戰二爬取西刺代理的代理對于剛入門的同學來說,本次實戰稍微有點難度,但是簡單的爬取圖片文本之類的又沒營養,所以這次我選擇了爬取西刺代理的地址,爬取的代理也能在以后的學習中用到本次實戰用的主要知識很多,其中包括自動保存利用抓包工具獲取和匹 爬蟲實戰(二):爬取西刺代理的代理ip 對于剛入門的同學來說,本次實戰稍微有點難度,但是簡單的爬取圖片、文本之類的又沒營養,所以這次我選擇了爬...
摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
閱讀 1027·2021-09-26 09:55
閱讀 3573·2021-09-24 10:30
閱讀 1374·2021-09-08 09:36
閱讀 2558·2021-09-07 09:58
閱讀 609·2019-08-30 15:56
閱讀 774·2019-08-29 18:32
閱讀 3622·2019-08-29 15:13
閱讀 1847·2019-08-29 13:49