Προς το περιεχόμενο

[Python] Εξαγωγή δεδομένων απο σελίδα


Spect~

Προτεινόμενες αναρτήσεις

  • Moderators

Καλησπέρα,

θελω να φτιάξω εν script το οποιο θελω να κοιταει στο πρόγραμμα της ΕΡΤ,https://program.ert.gr/tvsports.asp, και να επιστρέφει ποτε εχει αγωνες Φ1 και σε ποιο κανάλι. 

Το πρόβλημα ειναι οτι δεν βγάζω άκρη πως να κάνω την αναζήτηση ώστε να μου επιστρέψει αυτα που χρειάζομαι και στη συνέχεια να φιλτραρω μονο της Φ1.

 

import requests
from bs4 import BeautifulSoup


url = 'https://program.ert.gr/tvsports.asp'
page = requests.get(url)


soup = BeautifulSoup(page.text, 'lxml')
table1 = soup.find_all('div', {"class":["dates", "title"]})

Με αυτο μπορω να παρω ουσιαστικα Την ημερομηνια και τον Τιτλο αλλα δεν μπορω να παρω την ωρα και το καναλι. Καμια βοηθεια; 

Επίσης πως μπορω να παρω μονο το περιεχόμενο του class και οχι ολο; δηλαδη απο το dates να κρατησω μονο το 10 Δεκ πχ.

Ευχαριστω

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

import requests
from bs4 import BeautifulSoup
url = 'https://program.ert.gr/tvsports.asp'
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
col1 = soup.select('tr div.dates ')#date
col2 = soup.select('tr div.title ')#title
col3 = soup.select('tr td a ')#channel
col4 = soup.select("tr td div:not(.titles) font[color='#ed6508'] ")

for i in range(len(col1)):
    print(col1[i].get_text(),col1[i].next_sibling.strip())
    print(col2[i].get_text().replace('\n', ' ').replace('\r', '').strip())
    print(col4[i].get_text())
    print(col3[i].get('href').split("/")[-2])
    print("----------------------")

δοκίμασε έτσι

  • Like 1
  • Thanks 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

Με τσαντιζει οταν παλευω να κανω κατι και καποιος αλλος το ξερει τοσο ευκολα !! :P

Θενκ γιου!

ΥΓ: μην το παρεις στραβα δεν τσαντιζομαι πραγματικα και ξερω οτι για να σου ειναι ευκολο εχεις ξοδεψει ωρες μπροστα απο μια οθονη!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επειδή μου άρεσε κι εμένα, να κάνω ένα μικρό update στον κώδικα του @virxen75?

import requests
from bs4 import BeautifulSoup
url = 'https://program.ert.gr/tvsports.asp'
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
col1 = soup.select('tr div.dates ')#date
col2 = soup.select('tr div.title ')#title
col3 = soup.select('tr td a ')#channel
col4 = soup.select("tr td div:not(.titles) font[color='#ed6508'] ")

for i in range(len(col1)):
    txt = (col2[i].get_text(),col1[i].next_sibling.strip())[0]
    if "FORMULA 1" in txt:
        print(col1[i].get_text(),col1[i].next_sibling.strip())
        print(col2[i].get_text().replace('\n', ' ').replace('\r', '').strip())
        print(col4[i].get_text())
        print(col3[i].get('href').split("/")[-2])
        print("----------------------")
 
απλά ένα "if" για να κρατήσουμε μόνο ότι είναι σχετικό με F1 :)
 
Αντίστοιχα μπορεί να μπει condition για συγκεκριμένη ημερομηνία 
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators
31 λεπτά πριν, giostau είπε

Επειδή μου άρεσε κι εμένα, να κάνω ένα μικρό update στον κώδικα του @virxen75?


import requests
from bs4 import BeautifulSoup
url = 'https://program.ert.gr/tvsports.asp'
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
col1 = soup.select('tr div.dates ')#date
col2 = soup.select('tr div.title ')#title
col3 = soup.select('tr td a ')#channel
col4 = soup.select("tr td div:not(.titles) font[color='#ed6508'] ")

for i in range(len(col1)):
    txt = (col2[i].get_text(),col1[i].next_sibling.strip())[0]
    if "FORMULA 1" in txt:
        print(col1[i].get_text(),col1[i].next_sibling.strip())
        print(col2[i].get_text().replace('\n', ' ').replace('\r', '').strip())
        print(col4[i].get_text())
        print(col3[i].get('href').split("/")[-2])
        print("----------------------")
 
απλά ένα "if" για να κρατήσουμε μόνο ότι είναι σχετικό με F1 :)
 
Αντίστοιχα μπορεί να μπει condition για συγκεκριμένη ημερομηνία 

το κανα ηδη αυτο απλα δεν το ανεβασα! :)

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...