Skocz do zawartości
Sutikku

Python, podstawowe używanie stron internetowych

Rekomendowane odpowiedzi

Cześć, kiedyś już pisałem, że buduję własnego pół-inteligentnego robota. Mam już gotowy cały szkielet który przetwarza słowa z nagrania na tekst i potrafi wyłapać co mam na myśli. Przypuśćmy, że mam zmienną czas=1, czyli chce sprawdzić która godzina, ale mam taki kaprys żeby to sprawdzić przez internet, przez google. Jak wysłać zapytanie do googla która godzina, ale jeszcze tak by informacja ta została zwrócona do programu i mogła być odczytana?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Właściwie to tak, chociaż myślałem, że idzie to zrobić w stylu wyszukania w google "godzina" i odczytania pierwszego wyniku, bez API. Ale dzięki za pomoc ;)

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Idzie to zrobić w ten sposób, ale to jest mało optymalne rozwiązanie i bardziej skomplikowane :D W zasadzie wystarczy wczytać stronę i wychaczyć treść odpowiedniej sekcji na stronie(tej która zawiera godzinę).

  • Lubię (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Hm, to może podejdźmy do tematu w nieco inny sposób. Chciałbym z https://perelki.net/random stronki która losuje żarty, wyciągnąć taki i wyświetlić. Jak do tego podejść, nie znam się w takich kwestiach za bardzo.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Możesz użyć jakiejś biblioteki np. lxml i sparsować odpowiedź od serwera. np.
 

from io import StringIO
from lxml import etree
from httplib import HTTPSConnection

conn = HTTPSConnection("perelki.net")
conn.request("GET", "/random")
res = conn.getresponse()
data = unicode(res.read(), "utf-8")

parser = etree.HTMLParser()
doc = etree.parse(StringIO(data), parser)
root = doc.getroot()

joke = root.xpath("body/div[@class='content']/div[@class='container']")[0]
print '\n'.join(joke.xpath("text()")).strip()

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Dzięki wielkie za pomoc, działa elegancko, poczytam sobie jeszcze co poniektóre funkcje robią tak dla zrozumienia, ewentualnie tu dopytam.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×