【发布时间】:2018-06-11 00:18:04
【问题描述】:
我正在尝试使用以下代码从 Wikipedia 页面读取表格:
import pandas as pd
pd.read_html('https://en.wikipedia.org/wiki/2013–14_Premier_League')
这样做会产生以下错误:
UnicodeEncodeError: 'ascii' codec can't encode character '\u2013' in position 14: ordinal not in range(128)
我试过了
pd.read_html('https://en.wikipedia.org/wiki/2013–14_Premier_League', encoding='utf-8')
但仍然得到同样的错误。以下作品:
import requests
r = requests.get('https://en.wikipedia.org/wiki/2017–18_Premier_League')
c = r.content
dfs = pd.read_html(c)
我想知道的是如何让pd.read_html() 在没有requests 的情况下直接在url 上工作。我对编码有什么不明白的地方,还是 Pandas 的问题?
我正在运行 Pandas 0.21.1 和 Python 3.5.4 的 Anaconda 发行版。感谢您的帮助。
【问题讨论】:
-
在 Pandas 存储库 (github.com/pandas-dev/pandas/issues/21499) 上提出问题。
标签: python pandas web-scraping wikipedia