如何解决.format
我正在尝试使用.format格式化URL,以便我可以抓取多个相似的网页。
我通过时
df = pd.read_html('https://www.basketball-reference.com/players/a/abrinal01/gamelog/2019')
df
我很容易找到想要的结果,但是当我通过时
letter = 'a'
player = str(players_from_2018[0])
year = '2019'
df = pd.read_html('https://www.basketball-reference.com/players/{}/{}/gamelog/{}').format(letter,player,year)
我发现值错误,没有找到表。
如果我打印
print(('https://www.basketball-reference.com/players/{}/{}/gamelog/{}').format(letter,year))
我确切地得到了我要查找的网址:
https://www.basketball-reference.com/players/a/abrinal01/gamelog/2019
这是一个常见问题,如何解决?
解决方法
您忘记了一些括号。
尝试一下:
df = pd.read_html(('https://www.basketball-reference.com/players/{}/{}/gamelog/{}').format(letter,player,year))
但是如果您的python版本为3.6+,我建议您使用f字符串,以获取更清晰,更易读的代码:
df = pd.read_html(f'https://www.basketball-reference.com/players/{letter}/{player}/gamelog/{year}')
您的括号放在错误的位置。试试这个:
df = pd.read_html('https://www.basketball-reference.com/players/{}/{}/gamelog/{}'.format(letter,year))
,
根据Dylan的建议,您可以添加丢失的括号或删除不必要的括号并添加丢失的括号。这也应该起作用:
df = pd.read_html('https://www.basketball-reference.com/players/{}/{}/gamelog/{}'.format(letter,year))
,
在Python中使用f字符串格式
url = f'https://www.basketball-reference.com/players/{letter}/{player}/gamelog/{year}'
df = pd.read_html(url)
df
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。