recherche

Maison  >  Questions et réponses  >  le corps du texte

Une utilisation en python n'est pas claire

Lors du processus d'écriture d'un robot d'exploration en Python (exploration des entrées Wikipédia), l'url["href"] est apparue dans le processus de sortie de l'utilisation de l'itérateur. Je pensais qu'elle devrait appartenir à une utilisation dans l'itérateur, mais je n'ai pas pu. trouvez-le. S'il vous plaît, aidez-moi avec cette utilisation, je veux dire, merci

.
#coding:utf-8

import urllib
import urllib2
import re
from bs4 import BeautifulSoup

resp = urllib2.urlopen("https://en.wikipedia.org/wiki/Main_Page").read()

soup = BeautifulSoup(resp,"html.parser")

listurl = soup.findAll('a',href=re.compile("^/wiki/"))
for url in listurl:
        print url.get_text(),"------>","https://en.wikipedia.org"+url["href"]

L'url["href"] dans la dernière ligne a un effet de troncature sur les données analysées. Avant de l'ajouter, le résultat est :
print url
Output: Disclaimers
Après l'ajout, le résultat est :
print url[" href" ]
Output:/wiki/Wikipedia:General_disclaimer
Solution, merci

阿神阿神2745 Il y a quelques jours775

répondre à tous(1)je répondrai

  • 某草草

    某草草2017-05-18 11:01:46

    Tant que la classe implémente la méthode __getitem__, vous pouvez utiliser des crochets pour obtenir la valeur.

                                                       
    In [16]: class A():                                
        ...:     def __getitem__(self,a):              
        ...:         return a                          
        ...:                                           
                                                       
    In [17]: a = A()                                   
                                                       
    In [18]: a['a'], a[1]                              
    Out[18]: ('a', 1)                                  

    répondre
    0
  • Annulerrépondre