我一直在关注这个tutorial来学习如何使用Scrapy。我正在使用greenbook作为我的示例站点来测试web抓取。其中一个函数: SgmlLinkExtractor接受一个参数,该参数是“下一步”页面按钮的href。问题是,对于greenbook,如果您通过firefox检查元素,那么"next“页面按钮的href是一个"#”
这些是我的问题
1)这样使用"#“是什么意思: href="#”
2)如何解决这个问题
谢谢
发布于 2013-07-04 19:35:44
属性href="#"的含义与href=""相同,即对当前文档开头的引用。然而,它很少用于链接到开头的意图。相反,它使用一个占位符,使a元素正式成为一个链接,而且从样式的角度来看也是一个链接,但在这样的上下文中,该元素需要有一个onclick事件处理程序或覆盖它的href值。
请参阅致Is an empty href valid?和Which "href" value should I use for JavaScript links, "#" or "javascript:void(0)"?
在你的例子中,听起来你使用的软件会生成下一个页面的“链接”,这些链接不是真正的链接,而是由JavaScript驱动的,并且只将href="#"作为占位符。这不适用于要求href属性为实数的其他软件。这取决于这两个软件是否以及如何让它们协同工作。
发布于 2013-07-04 16:58:52
您可以使用#指向页面上的ID,而不是重定向到URL。
当您看到类似“单击here滚动到页面底部”之类的内容时
here href将为#bottomOfPage
http://jsfiddle.net/2q3NJ/
https://stackoverflow.com/questions/17466003
复制相似问题