微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么python写`而不是@

如何解决为什么python写`而不是@

所以我试图写一个垃圾邮件机器人来惹恼我的朋友们(我知道我很邪恶) 这是代码

import time
import pyautogui
time.sleep(10)
victim = "Saka"
f = open("spamtext",'r')
for word in f:
    pyautogui.keyUp('shift')
    pyautogui.typewrite("@" + victim)
    pyautogui.press("enter")
    time.sleep(1)

问题是,它没有键入“ @Saka”,而是键入了“`Saka”。 我已经尝试过pyautogui.keyUp('shift'),但仍然无法正常工作,有什么想法吗? (这也是我第一次在这里提出问题,对不起,如果我没有提供足够的信息)

解决方法

哈哈!这是一个有趣的帖子。为恶作剧加油。

使用pyautogui,它实际上按了键盘。想象一下,人类机器人真的很快地做到了。因此,您需要传递在键盘上按的确切键才能输出“ @”

为此,可以使用función热键。

为了方便快捷地按下热键或键盘快捷键,可以向hotkey()传递几个键字符串,这些字符串将按顺序按下,然后以相反的顺序释放。

在我的键盘上,我可以输出一个带shift + 2的@symbol,我认为这类似于:

pyautogui.hotkey('shift','2')

,

我认为这个问题与您的键盘布局有关,
因此,您可以使用ASCII进行签名打印,并确保它可以在所有地方使用

import time
import pyautogui
time.sleep(10)
victim = "Saka"
at_sign = chr(64) # 64 is at-sign ascii character: @
f = open("spamtext",'r')
for word in f:
    pyautogui.typewrite(at_sign + victim)
    pyautogui.press("enter")
    time.sleep(1)
,

感谢大家的帮助!事实是日语键盘不能与pyautogui一起很好地工作,因为它有两种模式,英语和日语,并且会一直在它们之间切换。我要做的就是下载美式键盘,现在我想我的朋友讨厌我...

感谢Martin Castellon的帮助!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。