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

scraping links από μια ιστοσελίδα με python


oraiustepe

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

Καλησπέρα, 

Θέλω να πάρω τα λινκς από κάθε εφαρμογή που υπάρχουν στην σελίδα του aptoide π.χ τα Links απο τα  adventure παιχνιδια (https://gr.aptoide.com/group/games/sub/adventure) , αλλά θέλω να τα παιρνει αυτοματοποιημένα το προγραμμα και να τα τυπώνει. Βρήκα τον παρακάτω κώδικα όπου παίρνει τα λινκς από μια άλλη ιστοσελίδα αλλά δεν ξέρω πως να το προσαρμόσω στην δική μου. Φάνταζομαι στο start page βάζω το παραπάνω λινκ  και λογικά πειράζω και κάτι σε αυτόν τον κώδικα links = soup.select('a[class="page-link next-page"]') . Κάποια βοήθεια περί του θέματος για να ξεκολλήσω; Ευχαριστώ

Υ.γ επισυνάπτω το .py αρχειο 

scraping.py

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

3 λεπτά πριν, tsofras είπε

Πρέπει να είναι για μάθημα?

Κώδικας από παράδειγμα online και url "scrapingclub.com/exercise" και ερώτηση σε φάση "δεν με νοιάζει τι θα γίνει ή να μάθω ή να το κάνω μόνος μου, πείτε μου τι να κάνω για να δουλέψει". 

Εσύ τι το δίνεις να είναι; 

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

1 ώρα πριν, Salecon είπε

Κώδικας από παράδειγμα online και url "scrapingclub.com/exercise" και ερώτηση σε φάση "δεν με νοιάζει τι θα γίνει ή να μάθω ή να το κάνω μόνος μου, πείτε μου τι να κάνω για να δουλέψει". 

Εσύ τι το δίνεις να είναι; 

Δεν απαντάς όταν δεν υπάρχει συγκεκριμένη ερώτηση οπότε δεν έχεις χάσει τον χρόνο σου :D

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

Άνοιξε ένα browser, τα παρακάτω πχ είναι me chrome:

  1. inspect element,
  2. browse around the code

Εύκολα μπορείς να βρεις αυτό που σε ενδιαφέρει δες συνημμενο:

αυτό που σε ενδιαφέρει ειναι το apps-list-container

οπότε το ζουμί ειναι το:

soup.findAll('div',{'class':'apps-list-container'})
 

 

Screenshot 2019-07-03 at 20.49.05.png

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

1 ώρα πριν, Lanike71 είπε

Εντάξει, το πρώτο που πρέπει να λέει κάποιος σε τέτοιες ερωτήσεις, είναι ότι πρέπει να ξέρεις βασική html.

Μετά, είναι εύκολο.

Όχι τόσο εύκολο μετά. Γιατί υπάρχουν και οι μηχανισμοί του πως λειτουργεί το συγκεκριμένο package/module της Python αλλά και το πως γίνεται serve η σελίδα. Π.χ., είναι στατική και ο client παίρνει ένα έτοιμο HTML αρχείο ή το αρχείο χτίζεται δυναμικά με κάποια κατάλληλη τεχνολογία (π.χ. βασισμένη σε JS) ;

Υπάρχουν άλλοι τρόποι και, σε μερικές περιπτώσεις, ειδικά πακέτα για να κάνεις scrapping σε Python αναλόγως τις συνθήκες. 

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

23 λεπτά πριν, Salecon είπε

Όχι τόσο εύκολο μετά. Γιατί υπάρχουν και οι μηχανισμοί του πως λειτουργεί το συγκεκριμένο package/module της Python αλλά και το πως γίνεται serve η σελίδα. Π.χ., είναι στατική και ο client παίρνει ένα έτοιμο HTML αρχείο ή το αρχείο χτίζεται δυναμικά με κάποια κατάλληλη τεχνολογία (π.χ. βασισμένη σε JS) ;

Εντάξει, δε μιλώ για js. Μιλώ για απλούς πίνακες <table> που έχουν τα δεδομένα.

E, αν δε μπορείς μετά να εξερευνήσεις τη βιβλιοθήκη και να διαβάσεις τι μεθόδους υποστηρίζει, τότε παράτα το άθλημα. Πρώτο και κύριο είναι να μπορείς να διαβάσεις 5 γραμμές από κώδικα παραδειγμάτων, ακόμα και αν τον συναντάς πρώτη φορά.

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

23 λεπτά πριν, Lanike71 είπε

Εντάξει, δε μιλώ για js. Μιλώ για απλούς πίνακες <table> που έχουν τα δεδομένα.

E, αν δε μπορείς μετά να εξερευνήσεις τη βιβλιοθήκη και να διαβάσεις τι μεθόδους υποστηρίζει, τότε παράτα το άθλημα. Πρώτο και κύριο είναι να μπορείς να διαβάσεις 5 γραμμές από κώδικα παραδειγμάτων, ακόμα και αν τον συναντάς πρώτη φορά.

Συμφωνώ. Για αυτό και η πρώτη ερώτησή μου ήταν: 

20 ώρες πριν, Salecon είπε

Για τι μάθημα είναι αυτή η άσκηση; 

 

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

Δημοσ. (επεξεργασμένο)

Καλησπέρα παιδιά το πρόβλημα λύθηκε. Ουσιαστικά έκανα αυτό που λέει ο Technology fan . Το scraping το χρειάζομαι για την πτυχιακή μου εργασία όπου παίρνω όλα τα λινκς απο τις aptoide εφαρμογές/παιχνίδια και για κάθε λινκ βρίσκω τα δικαιώματα που απαιτεί κάθε εφαρμογή απο το android. Ωστόσο αυτό μπορώ να το κάνω μόνο για τις 50 πρώτες εφαρμογές κάθε κατηγορίας γιατι από οτι βλέπω τις υπόλοιπες τις φορτώνει με το scroll down. Θεωρώ πως θα υπάρχει τρόπος και για αυτό αλλά ήδη και με 50 εφαρμογές απο κάθε κατηγορία μπορώ να μαζέψω 1200 εφαρμογές και παιχνίδια συνδυαστικά. Θα ρωτήσω την καθηγήτρια αν θέλει παραπάνω. 

 

υ.γ. Εγώ εξ αρχής ήθελα να το κάνω στο play store της google αλλά εκεί δεν είναι εμφανή τα διακιώματα των εφαρμογών στο html αρχείο και από ότι κατάλαβα υπήρχε javascript απο πίσω. Γνωρίζει κανείς τι μπορούσα να κάνω στην περίπτωση που έπαιρνα το Play store; Χρειαζόταν java ή γινόταν και με Python; Ευχαριστώ

υ.γ Συγνώμη που άργησα να απαντήσω 

υ.γ Αλλάξα τελείως τον κώδικα το έκανα με άλλον τρόπο

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

Μπορείς να δοκιμάσεις με το selenium (google it), συνήθως χρησιμοποιείτε για testing λόγους αλλά κάνει και σε αυτή τη περίπτωση, και υπάρχει και σε java και σε python. 

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

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

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

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

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

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

Σύνδεση

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

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