Výpis textu z kódu (Python)

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod MirekV9 27. 10. 2018 10:22

Při výstupu se mi vypíše: builtins.Attri­buteError: module 'request' has no attribute 'get'

Zde jemůj kód:

Kód: Vybrat vše
import request
import bs4
import urllib.request
url = "https://www.wikipedia.org/"
r = request.get(url)
html_contect = r.text
soup = BeautifulSoup(html_contect, "html.paser")
for meta in soup.find_all("meta")[2]:
    tds = meta.find_all("content")
    print("value:%s"\
          (tds[0].text, ))


Chci vypsat hodnotu tagu content. Nevím ale pomocí čeho jiného než funkce get bych to měl provést. Poradil byste mi někdo?

Díky
Dominik
MirekV9
Kolemjdoucí

Odeslat příspěvekod Jardahrou 27. 10. 2018 15:34

Není to request, ale requests, navíc by bylo vhodné BeautifulSoup naimportovat z bs4 nebo použít bs4.BeautifulSoup

atributy pro daný tag jsou zpřístupněny pomocí slovníku .attrs, tedy

Kód: Vybrat vše
soup.find_all("meta")[2].attrs['content']

vrátí hodnotu atributu 'content' pro třeti nalezený 'meta' tag.

Toto a mnoho dalšího se dá najít hned na titulní stráně dokumentace pro bs4
https://www.crummy.com/software/BeautifulSoup/bs4/doc/
Jardahrou
Kolemjdoucí