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