如何使用Python从twitter推文中删除图片URL

2024-10-03 09:17:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个来自twitterscraper的数据帧,我正在尝试从文本中删除图片URL

输入:大家好,祝大家今天愉快。pic.twitter.com/Z1yG39NO

输出:大家好,祝大家今天愉快

df['text'] = df['text'].apply(lambda x: re.split('https:\/\/.*[\r\n]*', str(x))[0]) 

我使用此代码,但它只能删除https:

谢谢:-)


Tags: 数据lambdatexthttps文本recomurl
2条回答

这样做:

df['text'] = df['text'].str.replace(r'pic.twitter.com(.*?)\s(.*)', '')

(.*?)\s(.*)将其放在每个帖子特定的url的其余部分

import re
def cleaning_PicURL (text):
    text = re.sub(r'pic.twitter.com/[\w]*',"", text)
    return text

df['text'] = df['text'].apply(lambda x: cleaning_PicURL(x))

使用上面的代码,它将从文本中删除图片URL,这里split函数将文本拆分为匹配的正则表达式模式,并给我们一个列表。在tweets中,您可能不确定图片URL的位置,因此使用sub函数而不是split函数更为相关,因为sub函数将直接删除带有空字符串的匹配文本,这对您来说很容易。正则表达式模式pic.twitter.com/[\w]*将有助于匹配文本中的所有twitter图片URL。希望这能消除你的疑虑

例如:

re.sub(r'pic.twitter.com/[\w]*',"", "test pic.twitter.com/va4nFjFQ5B")
'test '

相关问题 更多 >