Web Scraping – Řešení [4]
import time
import requests
from bs4 import BeautifulSoup
URL = "https://en.wikipedia.org"
START = "/wiki/Special:Random"
def najdi_titulek(soup):
return soup.find(id="firstHeading").text
def najdi_odkaz(soup):
hlavni_text = soup.find(class_="mw-parser-output")
for odstavec in hlavni_text.find_all("p"):
print(odstavec)
for odkaz in odstavec.find_all("a"):
print(odkaz)
return odkaz.get("href")
def stahuj(stranka):
navstivene = set()
while True:
if stranka in navstivene:
break
navstivene.add(stranka)
odpoved = requests.get(URL + stranka)
odpoved.raise_for_status()
soup = BeautifulSoup(odpoved.text, "html.parser")
print(najdi_titulek(soup))
stranka = najdi_odkaz(soup)
if not stranka:
break
time.sleep(1)
if __name__ == "__main__":
stahuj(START)
Toto je stránka lekce z kurzu, který probíhá nebo proběhl naživo s instruktorem.