from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
class DmozSpider(BaseSpider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
hxs = HtmlXPathSelector(response)
sites = hxs.select('//ul/li')
for site in sites:
title = site.select('a/text()').extract()
link = site.select('a/@href').extract()
desc = site.select('text()').extract()
print title, link, desc
这是我的代码。我想要大量的URL来循环使用。那么我如何应对这些?我确实在那里放了多个网址,但是我没有得到它们的输出。有些网址停止响应。那么我怎么才能使用这段代码来获取数据呢?从网站抓取多个网页
对不起,迟到的答复,我试图定义的规则,但这不是我的实际问题。我的问题是如何获得我提供给start_urls的所有页面的输出?我只从第3-4页获得输出到我的.csv文件中。我有将近20页来刮。那我该怎么做呢?刮这些3-4页后,我的程序停止从服务器接收答复。 – Nits 2012-05-19 05:12:05