收集网页上的部分文字

时间:2016-03-07 16:30:18

标签: python lxml

我正在尝试从网页收集特定部分的文字。基本上我想尝试从http://www.nco.ncep.noaa.gov/pmb/nwprod/thanks/index.thankusa.php收集这部分文本:

  

70026 THKS 70133 THKS 70200 THKS 70219 THKS 70231 THKS 70261 THKS    70273 THKS 70308 THKS 70316 THKS 70326 THKS 70350 THKS 70361 THKS    70398 THKS 72201 THKS 72202 THKS 72206 THKS 72208 THKS 72210 THKS    72214 THKS 72215 THKS 72230 THKS 72233 THKS 72235 THKS 72240 THKS    72248 THKS 72249 THKS 72250 THKS 72251 THKS 72261 THKS 72265 THKS    72274 THKS 72293 THKS 72305 THKS 72317 THKS 72318 THKS 72327 THKS    72340 THKS 72357 THKS 72363 THKS 72364 THKS 72365 THKS 72376 THKS    72388 THKS 72402 THKS 72403 THKS 72426 THKS 72440 THKS 72451 THKS    72456 THKS 72469 THKS 72476 THKS 72489 THKS 72493 THKS 72501 THKS    72518 THKS 72520 THKS 72528 THKS 72558 THKS 72562 THKS 72572 THKS    72582 THKS 72597 THKS 72632 THKS 72634 THKS 72645 THKS 72649 THKS    72659 THKS 72662 THKS 72672 THKS 72681 THKS 72694 THKS 72712 THKS    72747 THKS 72764 THKS 72768 THKS 72776 THKS 72786 THKS 72797 THKS    74389 THKS 74455 AB 74494 THKS 74560 THKS 78526 THKS 91165 THKS    91212 THKS 91285 THKS 91334 THKS 91348 THKS 91376 THKS 91408 THKS    91413 abc 91765 THKS

到目前为止,我已经得到了一些代码,目的是使用xpath来指定我想要收集的文本部分:

page = requests.get('http://www.nco.ncep.noaa.gov/pmb/nwprod/thanks   /index.thankusa.php')
tree = html.fromstring(page.content)
test = tree.xpath('/html/body/table[5]/tbody/tr[1]/td[2]/font/pre')

然而,这只是回归:     [元素预先在0x4240688]

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用text_content()获取代码的文字内容:

contents = test[0].text_content()

然后你可以处理你的字符串:

results = re.split('\n\s?\n', contents)[1]