0

我有一个爬虫爬虫,它使用 SgmlLinkExtractor 在这样的规则中从图像地图中提取链接,

Rule(SgmlLinkExtractor(allow_domains=('pressen-haas.de'),
                       restrict_xpaths=('//map[@name="bildmaschinen"]')))

如果您想看一下,起始网址是http://www.pressen-haas.de/neu//machines.php?lang=en 。生成的 url 的格式为http://www.pressen-haas.de/neu//masch_cat.php?lang=en&phid=0,其中 phid 参数从 0 运行到 8。到目前为止一切都很好,蜘蛛得到9 个不同的 url 并抓取它们,问题是当蜘蛛获取这些页面时,如果您在浏览器中输入 url,则所有信息都不可用。我写了一个回调来测试它,

hxs = HtmlXPathSelector(response)
print hxs.select('//text()').extract()

如果您在浏览器中键入 url并删除第二个 url 参数,http://www.pressen-haas.de/neu/masch_cat.php?lang=en

我检查了蜘蛛是否正在抓取正确的网址,我可以将抓取的网址从蜘蛛输出日志复制到浏览器中并且它们工作正常,为什么我可以在浏览器中看到这些网址但蜘蛛看到的东西不同?

提前致谢。

4

1 回答 1

0

蜘蛛试图抓取的页面的 html 格式非常糟糕,我相当确定这是问题所在,而不是蜘蛛本身的问题。

于 2012-07-30T17:28:23.820 回答