【发布时间】:2016-04-29 16:32:46
【问题描述】:
我正在尝试从一个网站(代码中的链接)获取前往外国的旅行者数量。出于某种原因,当我实际显示数据时,它会忽略超过 999,999 的任何数字。也许有人可以发现我在这里缺少的东西。
import requests
from lxml import html
import csv
import pandas as pd
import re
r = requests.get('http://data.worldbank.org/indicator/ST.INT.ARVL/countries/1W page=4&order=wbapi_data_value_2014%20wbapi_data_value%20wbapi_data_value- last&sort=asc&display=default')
data = html.fromstring(r.text)
Data1995 = []
Data_1995 = data.xpath("//tbody/tr[td]/td[2]/text()")
for i in Data_1995:
i = i.encode('ascii','ignore').strip()
i = re.sub('[()]', '', i) # removing ()
Data1995.append(i)
Data1995
【问题讨论】:
-
因为那些较大的数字在另一个元素中。
<span class="bignum">1,750,000</span> -
这是否意味着我无法使用一个 Xpath 获取所有数字?
-
我对 XPath 不太熟悉,但好像很熟悉
-
您可以在 xpath 中使用 or
-
@PadraicCunningham 感谢您的帮助!想通了!
标签: python parsing xpath web-scraping