0
votes

'Demandes' n'a aucun attribut '

J'essaie d'utiliser l'API Virustotal pour Python pour vérifier les URL. Le code fonctionne bien cependant, la sortie est une tout dans une ligne de manière difficile à lire. J'ai essayé de scinder les lignes mais cela ne se divise pas en lignes séparées. Comment puis-je résoudre

import requests



url = 'https://www.virustotal.com/vtapi/v2/url/report'

params = {'apikey': '', 'resource':''}

response = requests.get(url, params=params)

requests.split('\n')

print(response.json())


input()


5 commentaires

Ne devriez-vous pas utiliser réponse.split ('\ n') ?


Essayez sans scission. C'est un objet de réponse, pas une chaîne.


réponse ('\ n') il ne fonctionne pas


L'erreur que vous avez collée est très trompeuse. Est-ce le code exact que vous avez couru? Coller le Traceback de la sortie que vous obtenez


Oui. Son disponible sur développeurs.virustotal.com/reference#Canning-urls


3 Réponses :


0
votes

réponse.text code> est la chaîne de réponse. Utilisez également json.loads () code> en fonction de la réponse URL.

import requests
import json

url = 'https://www.virustotal.com/vtapi/v2/url/report'

params = {'apikey': '', 'resource':''}

response = requests.get(url, params=params)

print(json.dumps(response.text))


10 commentaires

réponse.json () est identique à json.loads (réponse.text). @Jacky Simplement pprint (réponse.json) pour voir comment la réponse a l'air puis diviser si nécessaire


@ankeshpandey S'il est chargé comme JSON, il ne peut pas la diviser à coup sûr. Mais l'objet de réponse n'est pas une chaîne valide. Il devrait analyser le réponse.text


Je reçois une erreur disant "L'objet JSON doit être STR, octets ou byTeArray, pas liste" lors de l'utilisation de JSON.loads (réponse)


@Jacky C'est pourquoi je vous ai dit en fonction de votre demande de demande. Essayez json.dumps ()


@ Ankesh Pandey Quand je mets simplement imprimer (Response.json), je reçois comme réponse 200 mais pas de sortie. Si la demande est réussie, comment puis-je obtenir les résultats


@ Kostas charritidis même si je remplacis avec des décharges, il ne fonctionne pas


@Jacky, j'essaie de reproduire, mais il semble que l'URL ne fonctionne pas.


Je suppose que vous avez besoin d'une clé API de Virustotal et ajoutez ensuite une URL pour "ressource"


@Jacky Yeap le plus probablement. Donc, vous obtenez des données ou non? Essayez d'analyser à JSON The Response.Text Bien que SPLAST en fait une liste d'ELEMETNS.


est json.loads (réponse.text.split ('\ n')) ne fonctionne-t-il pas pour vous? Que voyez-vous quand vous faites pprint (réponse.json ())? réponse.text, réponse.Content, réponse.json () Si vous devriez tous vous donner la sortie pendant la réponse.Status_code vous donnera 200



2
votes

Essayez ceci. XXX


0 commentaires

0
votes

Merci pour votre aide! Mais quand j'ai recherché, vous devez avoir un assistant séparé pour cela. Il est facilement disponible dans

HTTPS: // Élevé. IO / 2018/02/22 / Construction-A-Simple-Virustotal-Client-In-Python /


0 commentaires