【问题标题】:remove usernames from twitter data using python使用 python 从 twitter 数据中删除用户名
【发布时间】:2020-06-26 02:55:30
【问题描述】:

我使用 python 从 Twitter 获取了一些数据。现在我想对其进行预处理。如果推文的用户名介于两个单词之间并且它们之间没有空格,我该如何删除用户名?我想保留字,只删除用户名

例如。 文本文件: 你好@rahulcan你能帮我吗? 是的@tanyatell 我?

我想要的输出: 你好,你能帮帮我吗? 是的,告诉我?

【问题讨论】:

  • 请输入输出示例。
  • 请添加您的数据、代码和一些示例以进行说明!
  • 我添加了一个例子
  • 您的问题不清楚。您如何存储所有有效的用户名?即,您怎么知道 rahulcan 不是用户名?如果rahulrahulcan 都是有效的用户名,你想做什么?

标签: python python-3.x


【解决方案1】:
import re
Tweet = "Hello@username"
Tweet = re.sub('@[^\s]+','',Tweet)

此代码将删除@username,Hello 不会被删除。

【讨论】:

  • 您能否通过说明您的代码的作用来改进您的答案?
  • 如果 tweet= @usernamehello 我想要“hello”并删除用户名会怎样
  • 您是否执行网页抓取来获取推文?在那种情况下,我认为我们可以将其分开。但在这种情况下,我确实有丝毫线索。
  • 成功了。谢谢,@NegiBabu。关于如何删除表情符号的任何想法(我有一组非英语的推文。
【解决方案2】:
import re
Tweet = "Hello@username"
Tweet = re.sub('@[\w]+','',Tweet)

在@NegiBabu 的解决方案的基础上,Twitter 只允许使用字母数字句柄,因此 [\w] 可以作为此任务的更好的正则表达式。例如使用我提出的正则表达式,您将不允许匹配 @app#le。

【讨论】:

  • 您好!虽然这段代码可以解决问题,including an explanation 解决问题的方式和原因确实有助于提高帖子的质量,并可能导致更多的赞成票。请记住,您正在为将来的读者回答问题,而不仅仅是现在提问的人。请edit您的回答添加解释并说明适用的限制和假设。
  • 对不起,这是我的第一篇文章。我会尽快做的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-27
  • 1970-01-01
  • 2017-03-16
相关资源
最近更新 更多