Extraktion von tweet.js (json.loads und eval) (Python)

Hallo, erster Beitrag unhöflich. Seit letztem Jahr (2019) ist es unmöglich geworden, im CSV-Format herunterzuladen, aber von tweet.js, tweet-part <willkürliche natürliche Zahl> .js usw., zunächst "tweet of" my tweet` "" Ich möchte "Zeit" und "Text" als "Ich möchte extrahieren" schreiben.


Für tweet.js


#### **`read_js.py`**
```python

#Tweet im selben Verzeichnis.Bitte setzen Sie js
#Wenn Sie MeCab installiert haben, kommentieren Sie es aus, um die getrennten abzurufen.
import re
import datetime
import json
#import MeCab
tw_open = open("tweet.js","r",encoding="utf-8")
tw_time = open("tweet_mytext_time.txt","a",encoding="utf-8")
tw_a = open("tweet_mytext.txt","a",encoding="utf-8")
#tw_mecab = open("tweet_mytext_mecab.txt","a",encoding="utf-8")
twr = tw_open.read()
twr = re.sub("window.YTD.tweet.part0 = ","",twr)
twrj=json.loads(twr)
big=[]
small=[]
#mecab = MeCab.Tagger ("-Owakati")

for n in range(len(twrj)):
tw=eval(str(twrj[n]["tweet"]))
twf=str(tw["full_text"])
twf=re.sub(r"https?://[\w/:%#\$&\?\(\)~\.=\+\-…]+","",twf)
twf=twf.replace("\n","")
twc=str(tw["created_at"])
tim=datetime.datetime.strptime(twc,"%a %b %d %H:%M:%S %z %Y").replace(tzinfo=None)
tim_r=str(tim).replace(" ","_")
small=[]
twf_b=twf.split(":")[0] 
if not "RT" in twf_b:
 if not "@" in twf_b:
  small.append(str(tim.timestamp()).replace(".0",""))
  small.append(tim_r)
  small.append(twf)
  big.append(small)
small=[]

big.sort(key=lambda x: x[1],reverse=True)

for num in range(len(big)):
tw_a.write(big[num][2]+"\n")
tw_time.write(big[num][1]+" "+big[num][2]+"\n")
#text=big[num][2]
#text_m = mecab.parse(text)
#tw_mecab.write(str(text_m))
```

Wenn Sie auch tweet-part1.js haben, Mecab,


#### **`read_js.py`**
```python

import re
import datetime
import json
import MeCab
tw_open = open("tweet.js","r",encoding="utf-8")
tw1_open = open("tweet-part1.js","r",encoding="utf-8")
tw_time = open("tweet_mytext_time.txt","a",encoding="utf-8")
tw_a = open("tweet_mytext.txt","a",encoding="utf-8")
tw_mecab = open("tweet_mytext_mecab.txt","a",encoding="utf-8")
twr = tw_open.read()
tw1r = tw1_open.read()
twr = re.sub("window.YTD.tweet.part0 = ","",twr)
tw1r = re.sub("window.YTD.tweet.part1 = ","",tw1r)
twrj=json.loads(twr)
tw1rj=json.loads(tw1r)
big=[]
small=[]
mecab = MeCab.Tagger ("-Owakati")


for n in range(len(twrj)):
tw=eval(str(twrj[n]["tweet"]))
twf=str(tw["full_text"])
twf=re.sub(r"https?://[\w/:%#\$&\?\(\)~\.=\+\-…]+","",twf)
twf=twf.replace("\n","")
twc=str(tw["created_at"])
tim=datetime.datetime.strptime(twc,"%a %b %d %H:%M:%S %z %Y").replace(tzinfo=None)
tim_r=str(tim).replace(" ","_")
small=[]
twf_b=twf.split(":")[0] 
if not "RT" in twf_b:
 if not "@" in twf_b:
  small.append(str(tim.timestamp()).replace(".0",""))
  small.append(tim_r)
  small.append(twf)
  big.append(small)
small=[]

for n in range(len(tw1rj)):
tw1=eval(str(tw1rj[n]["tweet"]))
twf1=str(tw1["full_text"])
twf1=re.sub(r"https?://[\w/:%#\$&\?\(\)~\.=\+\-…]+","",twf1)
twf1=twf1.replace("\n","")
twc1=str(tw1["created_at"])
tim1=datetime.datetime.strptime(twc1,"%a %b %d %H:%M:%S %z %Y").replace(tzinfo=None)
tim_r1=str(tim1).replace(" ","_")
small=[]
twf_b1=twf1.split(":")[0] 
if not "RT" in twf_b1:
 if not "@" in twf_b1:
  small.append(str(tim1.timestamp()).replace(".0",""))
  small.append(tim_r1)
  small.append(twf1)
  big.append(small)

#print(big)
big.sort(key=lambda x: x[1],reverse=True)
for num in range(len(big)):
tw_a.write(big[num][2]+"\n")
tw_time.write(big[num][1]+" "+big[num][2]+"\n")
text=big[num][2]
text_m = mecab.parse(text)
tw_mecab.write(str(text_m))
```

Wenn Sie dies tun,



#### **`tweet_mytext.txt`**
```text

Text
.....
```


#### **`tweet_mytext_time.txt`**
```text

2020-01-19_05:47:57 Text
.....
```

Sollte sein.
<h2> Beschreibung

Ich hatte große Probleme mit dem Umgang mit den Anführungszeichen in JSON und ließ den grundlegenden Teil () beiseite.


#### **`python`**
```python

twrj=json.loads(twr)
tw=eval(str(twrj[n]["tweet"]))
```

An solchen Stellen werden anscheinend Open und Read verwendet, um den gesamten Satz zu lesen, zusätzliche Überschriften werden entfernt und json.loads (Zeichentyp) wird verwendet, um ihn in einen Wörterbuchtyp zu konvertieren.
Von dort aus konvertiert eval weitere wörterbuchartige Tweet-Werte als Wörterbuch.



#### **`python`**
```python

{'tweet': {'retweeted': False, 'source': '<a href="http://twitter.com/download/android" rel="nofollow">Twitter for Android</a>', 'entities': {'hashtags': [], 'symbols': [], 'user_mentions': [{'name': 'Saidjon', 'screen_name': 'noppo6', 'indices': ['3', '10'], 'id_str': '240638809', 'id': '240638809'}], 'urls': []}, 'display_text_range': ['0', '140'], 'favorite_count': '0', 'id_str': '1218787465110024192', 'truncated': False, 'retweet_count': '0', 'id': '1218787465110024192', 'created_at': 'Sun Jan 19 06:49:10 +0000 2020', 'favorited': False, 'full_text': 'RT @noppo6:Samarkand ist blau, weil es blau gestrichen wurde, um Touristen nach der Unabhängigkeit anzulocken. Fast das Ausmaß der Zerstörung von Ruinen. Herzlichen Glückwunsch an die japanischen Reiseführer und Medien, die Samarkand als "Blaue Stadt" loben. Ich denke, das ist gut für diesen einfachen Samarkand.\Auch wenn es n ist, Shahizi ...', 'lang': 'ja'}}
```

Der JSON, den ich gerade bekommen habe, war zum Beispiel so.

Frage: Wie beurteilen Sie, ob es Ihr Tweet ist?
A. Im Fall von RT ist es ein Doppelpunkt, und RT und @ sind an der 0. Stelle enthalten, also wird es danach beurteilt




Ich habe bisher nur geschrieben, bin aber froh, wenn es hilft. [Ich bin immer auf Twitter (@ kenkensz9), wenn Sie Fragen haben](https://twitter.com/kenkensz9)
Ich hoffe du magst es!


Recommended Posts

Extraktion von tweet.js (json.loads und eval) (Python)
Quellinstallation und Installation von Python
Umgebungskonstruktion von Python und OpenCV
Dies und das von Python-Eigenschaften
Koexistenz von Python2 und 3 mit CircleCI (1.0)
Python - Unterschied zwischen exec und eval
Zusammenfassung der Python-Indizes und -Slices
Reputation von Python-Büchern und Nachschlagewerken
Installation von Visual Studio Code und Installation von Python
Verbinde viel Python oder und und
Einfache Einführung in die Python3-Serie und OpenCV3
[Python] Verschiedene Kombinationen von Zeichenketten und Werten
Gleiche Automatisierung des Python- und PyPI-Setups
Vollständiges Verständnis von Python-Threading und Multiprocessing
Projekt Euler # 1 "Vielfaches von 3 und 5" in Python
Zusammenfassung der Korrespondenz zwischen Ruby- und Python-Array-Operationen
Zusammenfassung der Unterschiede zwischen PHP und Python
Die Antwort von "1/2" unterscheidet sich zwischen Python2 und 3
Angeben des Bereichs von Ruby- und Python-Arrays
Memorandum der Extraktion durch Python BS4-Anfrage
Installation von Python 3 und Flask [Zusammenfassung der Umgebungskonstruktion]
Python-Grundlagen ①
Grundlagen von Python ①
Vergleichen Sie die Geschwindigkeit von Python Append und Map
[Python] Kapitel 02-01 Grundlagen von Python-Programmen (Operationen und Variablen)
Kopie von Python
TRIE-Baumimplementierung mit Python und LOUDS
Python-Entwicklungsumgebung - Verwendung von Pyenv und Virtualenv-
Links und Memos von Python-Zeichencodezeichenfolgen
R- und Python-Schreibvergleich (euklidische Methode der gegenseitigen Teilung)
E / A-bezogene Zusammenfassung von Python und Fortan
Liste des zu verschiebenden und zu merkenden Python-Codes
[Python] Ein grobes Verständnis von Iterablen, Iteratoren und Generatoren
Berücksichtigung der Stärken und Schwächen von Python
Über flache und tiefe Kopien von Python / Ruby
Fortsetzung der Multi-Plattform-Entwicklung mit Electron und Python
Erläuterung der Bearbeitungsentfernung und Implementierung in Python
[Python] Beseitigen Sie bedingte Verzweigungen, indem Sie Enum und eval vollständig nutzen
[Python] Klassentyp und Verwendung des datetime-Moduls
Beispiel für das Lesen und Schreiben von CSV mit Python
Vergleich von Python und Ruby (Environment / Grammar / Literal Edition)
Einführung von Python
Grundlegende Bedienung von Python Pandas Series und Dataframe (1)
"Lineare Regression" und "Probabilistische Version der linearen Regression" in Python "Bayes lineare Regression"
Mayungos Python-Lernhinweis: Liste der Geschichten und Links
Verarbeitung von CSV-Daten in voller und halber Breite in Python
Die Geschichte von Python ohne Inkrement- und Dekrementoperatoren.
Berechnung der Standardabweichung und des Korrelationskoeffizienten in Python
[Python of Hikari-] Kapitel 06-02 Funktion (Argument und Rückgabewert 1)
Liste der Python-Bibliotheken für Datenwissenschaftler und Dateningenieure
Der Prozess der Installation von Atom und der Ausführung von Python
Python netCDF4 Lesegeschwindigkeit und Verschachtelung von for-Anweisungen
Python - Erläuterung und Zusammenfassung der Verwendung der 24 wichtigsten Pakete
[Python] Typfehler: Zusammenfassung der Ursachen und Abhilfemaßnahmen für 'Kein Typ'
Empfängt und gibt die Standardausgabe von Python 2- und Python 3> C-Implementierungen aus
Laden Sie mp4 einfach teilweise mit Python und youtube-dl herunter!
Unterschied zwischen Ruby und Python in Bezug auf Variablen
Das Einrückungsverhalten von json.dumps unterscheidet sich zwischen python2 und python3
Visualisieren Sie den Bereich der internen und externen Einfügungen mit Python