无论我尝试过什么 第1步
scrapy shell http://www.bseindia.com/corporates/Forth_Results.aspx?expandable=0
以xz形式表示Mozilla firebug
sel.xpath('/html/body/form/div[3]/div/div[3]/div[2]/div/div[3]/div[1]/div/div/div/table/tbody/tr[1]/td/table/tbody/tr[2]/td/table/tbody/tr/td/div/table/tbody/tr[3]/td[3]/text()').extract()[0].strip()
不起作用
sel.xpath('/html/body/form/div[3]/div/div[3]/div[2]/div/div[3]/div[1]/div/div/div/table/tbody/tr[1]/td/table/tbody/tr[2]/td/table/tbody/tr/td/div/table/tbody/tr[3]/td[3]/text()').extract()[0]
不起作用
sel.xpath('/html/body/form/div[3]/div/div[3]/div[2]/div/div[3]/div[1]/div/div/div/table/tbody/tr[1]/td/table/tbody/tr[2]/td/table/tbody/tr/td/div/table/tbody/tr[3]/td[3]/text()').extract()
不起作用
从Chrome找到xpath
sel.xpath('//div[@id="wrap"]/div/div[3]/div[2]/div/div[3]/div[1]/div/div/div/table/tbody/tr[1]/td/table/tbody/tr[2]/td/table/tbody/tr/td/div/table/tbody/tr[3]/td[2]/text()').extract()
它在chrome控制台中工作正常但在输入命令时输出为[]
。对于mozilla xpath也是如此。
请帮忙。
答案 0 :(得分:1)
Chrome和Firefox倾向于向树中添加一些DOM元素。添加了tbody
标记。另外假设您在HTML中查找类名TTRow
,您可以将选择器路径用作:
In [32]: response.xpath('//*[@id="wrap"]//table//tr[@class="TTRow"][3]/td[2]/text()').extract()
Out[32]: [u'DWITIYA']