2016-05-25 18 views
-1

ここは私がクロールしようとしているウェブサイトのリンクです。 http://search.epfoservices.in/est_search_display_result.php?pageNum_search=1&totalRows_search=72045&old_rg_id=AP&office_name=&pincode=&estb_code=&estb_name=&paging=paging これは私のスクラップです。これはスクラップの最初の試みの1つですので、愚かな間違いを許してください。親切に見て、私のコードを実行させるような変更を提案してください。以下Items.py治療スパイダーが必要なページをクロールしない

import scrapy 


class EpfoCrawl2Item(scrapy.Item): 
    # define the fields for your item here like: 
    # name = scrapy.Field() 
    from scrapy.item import Item, Field 
    S_No = Field() 
    Old_region_code = Field() 
    Region_code = Field() 
    Name = Field() 
    Address = Field() 
    Pin = Field() 
    Epfo_office = Field() 
    Under_Ro = Field() 
    Under_Acc = Field() 
    Payment = Field() 
    pass 

epfocrawl1_spider.py

import scrapy 
from scrapy.selector import HtmlXPathSelector 


class EpfoCrawlSpider(scrapy.Spider): 
"""Spider for regularly updated search.epfoservices.in""" 
name = "PfData" 
allowed_domains = ["search.epfoservices.in"] 
starturls = ["http://search.epfoservices.in/est_search_display_result.php?pageNum_search=1&totalRows_search=72045&old_rg_id=AP&office_name=&pincode=&estb_code=&estb_name=&paging=paging"] 

def parse(self,response): 
    hxs = HtmlXPathSelector(response) 
    rows = hxs.select('//tr"]') 
    items = [] 
    for val in rows: 
     item = Val() 
     item['S_no'] = val.select('/td[0]/text()').extract() 
     item['Old_region_code'] = val.select('/td[1]/text').extract() 
     item['Region_code'] = val.select('/td[2]/text()').extract() 
     item['Name'] = val.select('/td[3]/text()').extract() 
     item['Address'] = val.select('/td[4]/text()').extract() 
     item['Pin'] = val.select('/td[5]/text()').extract() 
     item['Epfo_office'] = val.select('/td[6]/text()').extract() 
     item['Under_ro'] = val.select('/td[7]/text()').extract() 
     item['Under_Acc'] = val.select('/td[8]/text()').extract() 
     item['Payment'] = val.select('a/@href').extract() 
     items.append(item) 
     yield items 

そして

は "scrapyクロールPfData"

016-05-25 13:45:11+0530 [scrapy] INFO: Enabled item pipelines: 
2016-05-25 13:45:11+0530 [PfData] INFO: Spider opened 
2016-05-25 13:45:11+0530 [PfData] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 
2016-05-25 13:45:11+0530 [scrapy] DEBUG: Telnet console listening on 127.0.0.1:6023 
2016-05-25 13:45:11+0530 [scrapy] DEBUG: Web service listening on 127.0.0.1:6080 
2016-05-25 13:45:11+0530 [PfData] INFO: Closing spider (finished) 
2016-05-25 13:45:11+0530 [PfData] INFO: Dumping Scrapy stats: 
    {'finish_reason': 'finished', 
    'finish_time': datetime.datetime(2016, 5, 25, 8, 15, 11, 343313), 
    'log_count/DEBUG': 2, 
    'log_count/INFO': 7, 
    'start_time': datetime.datetime(2016, 5, 25, 8, 15, 11, 341872)} 
2016-05-25 13:45:11+0530 [PfData] INFO: Spider closed (finished) 
を実行した後、ログ
です

提案が必要です。

+0

@abukajませんなければなりません!コードレビューには作業コードが必要です。このコードは意図したとおりに動作しません。 – Mast

+0

'クラスEpfoCrawlSpider(scrapy.Spider):'の後に字下げがないことは決してうまくいきません。インデントはPythonでは重要です。 – Mast

+0

@Mastはコードレビューをデバッグするためにソースコードを検査していませんか? – abukaj

答えて

0

開始URLリストはstart_urlsなくstarturls

関連する問題