Veuillez prendre la responsabilité d'acquérir le contenu.
from tqdm import tqdm
import urllib.parse
import time
jp_keyword = ''#Entrez un mot-clé de recherche
page_num=int()#()Entrez le nombre total de pages dans
#URL encoder le japonais
keyword = urllib.parse.quote(jp_keyword)
#Liste de titres
title_list=[]
#Liste des dates de publication
date_list=[]
for i in tqdm(range(1,page_num-1)):
    
    url="https://news.yahoo.co.jp/search/?p="+keyword+"&st=n&ei=UTF-8&b="+str(i)+"1"
    print(url)
    res = requests.get(url)
    #Laisser un espace pour ne pas surcharger le serveur
    time.sleep(2)
    #Créer un objet BeautifulSoup à partir du code HTML de la réponse
    soup = BeautifulSoup(res.content, 'html.parser')
    #Récupère la chaîne de la balise de titre
    title_text = soup.find_all('h2')
    for x in title_text:
        title_list.append(x.text)
    
    date_text=soup.find_all('span', class_="d")
    for x in date_text:
        date_list.append(x.text)
    
Démarrage rapide: paramètres de l'API Natural Language (https://cloud.google.com/natural-language/docs/setup?hl=ja) Utiliser les clés API (https://cloud.google.com/docs/authentication/api-keys?hl=ja)
key=""#Entrez la clé API
#URL de l'API
url = 'https://language.googleapis.com/v1/documents:analyzeSentiment?key=' + key
def sentimental(text):
    header = {'Content-Type': 'application/json'}
    body = {
        "document": {
            "type": "PLAIN_TEXT",
            "language": "JA",#Spécifiez la langue
            "content": text
        },
        "encodingType": "UTF8"
    }
    #Recevez le résultat au format json.
    response = requests.post(url, headers=header, json=body).json()
    #Score de retour
    return response["documentSentiment"]["score"]
Mettez le score dans la liste des scores
score_list=[]
for word in tqdm(wordlist):
    score_list.append(sentimental(word))
import pandas as pd
df = pd.DataFrame()
df["word"]=title_list
df["date"]=date_list
df["score"]=score_list
import pickle
with open('sentimental_df.pickle', 'wb') as web:
    pickle.dump(df , web)
import pickle
with open('sentimental_df.pickle', 'rb') as web:
    df = pickle.load(web)
    print (df)
Utiliser les clés API (https://cloud.google.com/docs/authentication/api-keys?hl=ja) Analyse des émotions en utilisant l'API Google Natural Language avec Python Natural Language Améliorez l'efficacité du développement! Comment utiliser pickle avec Python [Pour les débutants] Encodage / décodage d'URL en Python (urllib.parse.quote, unquote) Démarrage rapide: paramètres de l'API Natural Language (https://cloud.google.com/natural-language/docs/setup?hl=ja)
Recommended Posts