1

这是我的蜘蛛代码

 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

现在我想在日志文件中写入数据,例如 name: {{name}} , link={{link }} 用于 tetsing ,因为它会实时抓取网站。

我怎样才能做到这一点

4

1 回答 1

7

这是答案,但我假设您只是复制了已有的代码,否则您将知道如何使用文件 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']))
于 2012-11-12T07:37:35.163 回答