Python3 + Pyperclip, der den kopierten Text neu schreibt

Planung

Ich wollte ein Programm schreiben, das äußerst verschwenderisch war und den kopierten Text regelmäßig neu schrieb, also werde ich es versuchen. Der Quellcode ist so kurz, dass er wahrscheinlich für Anfänger ist.

Denken Sie über das Verfahren nach

  1. Holen Sie sich den kopierten Text
  2. Umschreiben
  3. In Clip einfügen
  4. Wiederholen Sie regelmäßig

Es wird jedoch nur ein Teil des Inhalts neu geschrieben.

Umgebung

Lass es uns versuchen!

Versuchen Sie es mit Pyperclip

Lassen Sie zuerst den Text in die Zwischenablage kopieren. Sie können hierfür Pyperclip verwenden.

Eingabeaufforderung


pip install pyperclip 

Sie sollten es installieren können, indem Sie die Eingabeaufforderung eingeben. Kopieren wir den vorherigen Satz und führen das Programm aus.

sample01.py


import pyperclip, re

copy_text = str(pyperclip.paste())
print(copy_text)

Ausführungsergebnis


Es ist jedoch zu offensichtlich und nicht interessant, alles neu zu schreiben.
Warum also nicht nur einen Teil davon ändern?

Es ist mir gelungen, den kopierten Text zu erhalten, daher versuche ich, den Text in die Zwischenablage zu kopieren.

sample02.py


copy_text = 'hello world!'

print(copy_text)
pyperclip.copy('\n'.join(copy_text))

Ausführungsergebnis


Mein Name ist Alice
hello world!

umschreiben

Lassen Sie uns den kopierten Text neu schreiben.

Es ist nicht interessant, alles zu ändern (Sie müssen den Text gar nicht erst abrufen), daher möchte ich nur einen Teil ändern. Zum Beispiel Zahlen. Wenn die Zahlen herauskommen, ersetzen Sie sie durch Zufallszahlen.

Ich denke, dass die zu kopierenden Sätze oft auf Japanisch sind, also ändern Sie auch das Alphabet. Dies wird nur neu geschrieben, wenn eine bestimmte Zeichenfolge angezeigt wird.

sample03.py


import pyperclip, re

copy_text = str(pyperclip.paste())
print(copy_text)

new = re.sub(r'[\d]', '*', copy_text)
new = re.sub(r'day|best|hello', '****', new)

if len(copy_text) > 0:
    pyperclip.copy('\n'.join(new))
    print('Rewrite:', new)
else:
    print('Nothing')

Ersetzen Sie die Zeichenfolge durch re. Es ist ein regulärer Ausdruck. Ich habe darüber nachgedacht, es durch eine Zufallszahl zu ersetzen oder in eine zufällige Zeichenkette zu ändern, aber es hat nicht funktioniert. Ich bin sicher, jemand wird gut darüber nachdenken.

Ausführungsergebnis


I will do my best day to day!
Rewrite: I will do my **** **** to ****!

Der englische Text, den ich kopiert habe, ist übrigens eine Google-Übersetzung von "Ich werde heute mein Bestes geben!" Ich freue mich auf die zweite Amtszeit von New Game.

Beginnen Sie regelmäßig

Das letzte Oshigoto. Durch Ausführen von Thread aus Thread wird dieser alle 5 Sekunden ausgeführt. Das Programm bis oben wurde teilweise geändert.

copyChange.py


#!/usr/bin/env python3
# -*- coding: utf-8 -*-

u"""Schreiben Sie den Text auf dem Hoge-Clip ohne Erlaubnis neu
Beispielsatz: Ich werde mein Bestes geben, Tag 2017!
"""

import pyperclip, re, threading, random


def task():
    copy_text = str(pyperclip.paste())

    new = re.sub(r'[\d]', str(random.randint(0, 9)), copy_text)
    new = re.sub(r'day|best|hello', '****', new)

    if len(copy_text) > 0:
        pyperclip.copy(''.join(new))
        print('---Rewrite Complete!---')
    else:
        print('---Failure---')
    th = threading.Timer(5, task)
    th.start()

t = threading.Thread(target=task)
t.start()

Ich habe es umgeschrieben, um die Zahl zufällig zu ändern, damit ich sehen kann, dass es sich regelmäßig wiederholt. Gleichzeitig wurde 2017 zu den Beispielsätzen hinzugefügt. Außerdem habe ich es gelöscht, da es ein Hindernis wäre, den kopierten Text zu drucken, wenn ich ihn ausgeführt habe.

Ausführungsergebnis


---Rewrite Complete!---
---Rewrite Complete!---
---Rewrite Complete!---

Zwischenablage


I will do my **** **** to **** 4444!
I will do my **** **** to **** 7777!
I will do my **** **** to **** 8888!

Danke für deine harte Arbeit.

Bonus

Die Zwischenablage kann nur neu geschrieben werden, wenn dieses Programm gestartet wurde. Daher werde ich eine Methode vorstellen, um sie automatisch zu starten, um den Grad der Gewalt weiter zu erhöhen.

Diesmal wird Windows angenommen, sodass Sie den Taskplaner verwenden können. Ich denke, dass es Methoden für den automatischen Start in anderen Betriebssystemen gibt. Wenn Sie also von Ihrem eigenen PC belästigt werden möchten, sollten Sie ihn auf jeden Fall suchen und ausprobieren. Taskplaner starten

Möglicherweise können Sie dies mit schtasks an der Eingabeaufforderung tun. Ich habe es nie benutzt, aber ich weiß es nicht.

Referenzmaterial

Entschuldigung

Recommended Posts

Python3 + Pyperclip, der den kopierten Text neu schreibt
[Python] Verschieben Sie Dateien, die die Bedingungen erfüllen
[Python] Ein Programm, das die Partitur rundet
Extrahieren Sie mit Python Zeilen, die den Bedingungen entsprechen, aus einer Textdatei
Mein Pyperclip (Python)
Diejenige, die den Fortschrittsbalken in Python anzeigt
[Python] Ein Programm, das die Anzahl der Täler zählt
[Python] Bewerten Sie die Gesichtsausdrücke, die auf dem Gesicht erscheinen
[Python] Generieren Sie Zufallszahlen, die der Rayleigh-Verteilung folgen
Suchen Sie den Teil 575 aus Wikipedia in Python
Python-Programm, das nach demselben Dateinamen sucht
PHP- und Python-Beispiele, die die ChatWork-API treffen
Ein Memo, dass ich den Datenspeicher mit Python berührt habe
Ich hatte das Gefühl, dass ich den Python-Code nach C ++ 98 portiert habe.
Module, die die Shell in Python durchlaufen können
Die Einstellung, die Programmierer haben sollten (The Zen of Python)
[Python] Ein Programm, das die Positionen von Kängurus vergleicht.
Python-Programm, das ical-Daten in Text konvertiert
Python Open CV hat versucht, das Bild im Text anzuzeigen.
Clustertext in Python
Finden Sie das maximale Python
der Zen von Python
Textverarbeitung mit Python
[Python] Teilen Sie das Datum
Erstellen eines Python-Skripts, das die e-Stat-API unterstützt (Version 2)
Berücksichtigung von Python-Dekoratoren des Typs, der Variablen übergibt
Ein Liner, der die Startzeit von cron zufällig neu schreibt
Die Geschichte, dass Python nicht mehr mit VS Code (Windows 10) arbeitet
Verschiedene Hinweise zur Verwendung von Python für Projekte
[Python] Ein Programm, das die häufigsten Vogeltypen findet
Python-Skript, das den Inhalt zweier Verzeichnisse vergleicht