Scrapy, чтобы перейти на следующую страницу и скачать файлы определенного типа - PullRequest
0 голосов
/ 13 ноября 2018

Я новичок в Scrapy & Python, хочу, чтобы scrapy перешел на следующую страницу и загрузил файлы определенного типа (например: EX-10.1, Ex-10.2) ВСЕ файлы типа EX-10.Мой код работает, но он не загружает никаких файлов.

мой код

 import urlparse

 from scrapy.http import Request
 from scrapy.spiders import BaseSpider

 class legco(BaseSpider):
 name = "sec_gov"

 allowed_domains = ["www.sec.gov", "search.usa.gov", "secsearch.sec.gov"]
 start_urls = ["https://www.sec.gov/cgi-bin/browse-edgar?company=&match=&CIK=&filenum=&State=&Country=&SIC=2834&owner=exclude&Find=Find+Companies&action=getcompany"]


 #extract search results
 def parse(self, response): 
 for link in response.xpath('//div[@id="seriesDiv"]//table[@class="tableFile2"]/a/@href').extract():
    req = Request(url = link, callback = self.parse_page)
    yield req

 #Saving htm files
 def parse(self, response):
 base_url = 'http://www.sec.gov/cgi-bin/browse-edgar'
 for a in response.xpath('//a[@href]/@href'):
    link = a.extract()
    if link.endswith('.htm'):
        link = urlparse.urljoin(base_url, link)
        yield Request(link, callback = self.save_pdf)

 def save_pdf(self, response):
 path = response.url.split('/')[-1]
 with open(path, 'wb') as f:
    f.write(response.body)

Какую ошибку я допустил в своем коде?Может кто-нибудь помочь мне с этим, пожалуйста, спасибо заранее.

...