实际上我的意图是从"href="javascript:submitAction_win0(document.win0,'HRS_APPL_WRK_HRS_LST_NEXT')"
获得Next,所以仅举一个例子我正在考虑[这个网址] [1]。从这个网址中可以看到页面末尾的“下一步”,所以如果你观察到html,那么它们是通过href="javascript:submitAction_win0(document.win0,'HRS_APPL_WRK_HRS_LST_NEXT')
标记的,href
标记为#
,我就是试图收集那些href标签,即使它们是#
。
def parse(self,response):
selector = Selector(response)
links = []
for link in selector.css('span.PSEDITBOX_DISPONLY').re('.*>(\d+)<.*'):
#intjid = selector.css('span.PSEDITBOX_DISPONLY').re('.*>(\d+)<.*')
abc = 'xxxx'
#print abc
yield Request(abc,callback=self.parse_listing_page,dont_filter=True)
#meta={"use_splash": False}
# )
nav_page = selector.css('div#win0divHRS_APPL_WRK_HRS_LST_NEXT a').extract()
print nav_page
for nav_page in nav_page:
## To pass the url to parse function
yield Request(urljoin('xxx',nav_page),self.parse,dont_filter=True)
&#13;
当我运行上面的代码时,我得到的结果为" HTTP status code is not handled or not allowed"
,我的意思是没有,任何人都可以告诉我如何通过""href="javascript:submitAction_win0(document.win0,'HRS_APPL_WRK_HRS_LST_NEXT')""
函数实现Next,以及结果为空的原因。我在html中观察某种奇怪的东西,例如Next中的一个页面的锚标记为"<a id="HRS_APPL_WRK_HRS_LST_NEXT" class="PSHYPERLINK" href="javascript:submitAction_win0(document.win0,'HRS_APPL_WRK_HRS_LST_NEXT');" tabindex="74" ptlinktgt="pt_replace" name="HRS_APPL_WRK_HRS_LST_NEXT"></a>"
提前致谢
输出:
[u'<a name="HRS_APPL_WRK_HRS_LST_NEXT" id="HRS_APPL_WRK_HRS_LST_NEXT" ptlinktgt="pt_replace" tabindex="74" href="javascript:submitAction_win0(document.win0,\'HRS_APPL_WRK_HRS_LST_NEXT\');" class="PSHYPERLINK">Next</a>']
&#13;
答案 0 :(得分:3)
Scrapy不支持java脚本调用。但是有一些机制可以用来面对java脚本。