2012-11-12 48 views
1

这是我的蜘蛛代码我怎样才能在Python写数据的文本文件Scrapy

class DmozSpider(BaseSpider): 
    5  name = "dmoz" 
    6  allowed_domains = ["dmoz.org"] 
    7  start_urls = [ 
    8    "file:///home/ubuntu/xxx/test.html", 
    9    ] 
10  def parse(self, response): 
11   hxs = HtmlXPathSelector(response) 
12   sites = hxs.select("//li") 
13   items = [] 
14   for site in sites: 
15 
16    item = DmozItem() 

17    item['title'] = site.select('a/text()').extract() 
18    item['link'] = site.select('a/@href').extract() 
19    item['desc'] = site.select('text()').extract() 
20    items.append(item) 
21   return items 

现在我想写像名日志文件数据:{{名}},链接= {{链接} },因为它会实时抓取网站。

我怎么能做到这一点

+0

你试过了什么?将格式化输出写入文本文件是“微不足道的”,因此使用简单的日志API(如最近关于您的问题的答案中所示)(http://stackoverflow.com/questions/13304325/how-can-i-log-into - 网站和-DO的东西 - 在 - 蟒蛇)。虽然这个网站偶尔会提供基本的问题,特别是当在网上搜索自己的关键字时,不会产生很好的洞察力,但恐怕这个问题不符合这个最低期望......投票结束。 – mjv

回答

3

这里的答案,但我相信你只是复制你已有的代码,否则你会知道如何使用文件IO,或至少必须研究的课题的能力在这个网站上已经被覆盖了一百万次。

... 
item['title'] = site.select('a/text()').extract() 
item['link'] = site.select('a/@href').extract() 
item['desc'] = site.select('text()').extract() 
items.append(item) 
with open('log.txt', 'a') as f: 
    f.write('name: {0}, link: {1}\n'.format(item['title'], item['link']))