python - 网页抓取后从名称中删除链接字符
问题描述
我正在尝试删除 [e] 或 [f] 等字符,当我们从网站上抓取数据但遇到问题时,这些字符会附加到名称的末尾。我正在使用代码
url= "https://en.wikipedia.org/wiki/Template:COVID-19_pandemic_data#covid19-container"
response= requests.get(url)
response
inf= response.content
scraping = BeautifulSoup(inf, "lxml")
scraping
element = scraping.find('table')
df = pd.read_html(str(element))[0]
df
df['countries'] = df['countries'].str.strip('[(.[*]\)]')
但是从上述代码收到的输出不准确,因为我得到了美国 [e ,俄罗斯 [f,英国 [g,西班牙 [h ,德国 [I 等。有人可以帮我解决这个问题吗?谢谢
解决方案
df['Country'] = df['Country'].str.replace('\[\w\]', "")
这将能够删除方括号和其中的任何内容。
推荐阅读
- json - Perl 脚本 - 预期的 '"' 或 JSON 无效
- python - 使用 sklearn 管道时出现 ValueError:数组不得包含 infs 或 NaN
- r - 如何按降序排列这个 ggplot2 图?
- java - 为什么我可以做清单
.toArray() 但不列出 .toArray() - python - 通过使用 python 从 yaml 文件中读取数据来创建 sql 文件
- pytorch - 使用 pytorch 张量进行维度扩展
- python - 通过记忆实现最小的硬币数量以进行更改?
- drake - 如何获得动态,我们可以在下一步中应用渐变(重新打开)
- spring - junit 测试无法捕获异常
- database - 使用飞镖将sqlite数据库加载到内存中?