所以我试图从网站中提取表格。它是一个两列表,如下所示:
Name Foo
Number Foo123
Address 10
First Drive
London
AB34 5FG
Region United Kingdom
该表没有标题,“地址”行在第一列中包含第二、城市、邮政编码等的空白单元格。
我已经设法拿到了桌子,很好。
table = response.xpath('//table[@id="MemberDetails"]/tr/td//text()')
这是输出:
[<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'Name:\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nFoo\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'Number:\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nFoo123\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'Address:\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\n(10)\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nFirst Drive\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nLondon\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nAB34 5FG\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nUnited Kingdom\xa0\r\n'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'Region:\xa0'>,
<Selector xpath='//table[@id="MemberDetails"]/tr/td//text()' data=u'\r\nUnited Kingdom\xa0\r\n'>]
但是,我对如何将表解析为适当的结构感到困惑。
第一个问题:不知道如何处理地址字段。第二个问题:这是一个两列的表。保存时,我想转置,“名称、号码、地址、地区”是列标题。
有 1000 个这样的页面包含类似的数据。
慕田峪7331174
相关分类