0
이것은 처음으로 거미를 만들고 내 노력에도 불구하고 내 CSV 내보내기에 아무 것도 반환하지 않습니다. 내 코드 :Scrapy : 스파이더는 아무것도 반환하지 않습니다
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import Selector
class Emag(CrawlSpider):
name = "emag"
allowed_domains = ["emag.ro"]
start_urls = [
"http://www.emag.ro/"]
rules = (Rule(SgmlLinkExtractor(allow=(r'www.emag.ro')), callback="parse", follow= True))
def parse(self, response):
sel = Selector(response)
sites = sel.xpath('//a/@href').extract()
for site in sites:
site = str(site)
for clean_site in site:
name = clean_site.xpath('//[@id=""]/span').extract()
return name
나는 사이트를 인쇄하면 URL 목록을 가져 오는 것이 좋습니다. scrapy shell의 URL 중 하나에서 이름을 검색하면 찾으실 수 있습니다. 문제는 모든 링크의 모든 이름이 크롤링되었을 때입니다. 나는 "emag> emag> emag.csv"와 함께 실행합니다.
힌트를 잘못주지시겠습니까? 거미의
많은 시간을 할애 할 수 있습니다. 아직까지는 아무것도 추출하지 못한다. 그 선택은 xpath 선택에도 잘못 되었습니까? – user3753592
@ user3753592 이렇게하면 스파이더를 실행 해보십시오. 'scrapy crawl -o output.csv -t csv'. – alecxe
녀석, 그게 내가 그들을 실행하는 최초의 방법이었습니다. 그럼에도 불구하고 나는 여전히 빈 파일을 가지고있다. – user3753592