Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι

ΘΕΜΑ: Χρειαζομαι λιγη βοηθεια

Χρειαζομαι λιγη βοηθεια 2 Χρόνια 8 Μήνες πριν #3588

  • daffaras
  • Το Άβαταρ του/της daffaras
  • Αποσυνδεμένος
  • p_____
  • Δημοσιεύσεις: 2
Εχω μια εργασια για την σχολη μου πανω σε python αλλα δεν βγαζω καποια ακρη μετα απο παρα πολυ προσπαθεια.Η εργασια ζηταει να φιλτραρουμεμια ιστοσελίδα, κρατώντας μόνο τους συνδέσμους (URL links, από a tags), καθώς και το κείμενο κάθε συνδέσμου.
Υι αυτό χρειάζεται μια εφαρμογή crawler·
Μπορει να μου δωσει καποιος ενα πραδειγμα ωστε να καταφερω να κανω την εργασια διοτι δεν προλαβαινω Ευχαριστω πολυ.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Χρειαζομαι λιγη βοηθεια 2 Χρόνια 8 Μήνες πριν #3589

  • embryo
  • Το Άβαταρ του/της embryo
  • Αποσυνδεμένος
  • pyth__
  • Δημοσιεύσεις: 92
  • Ληφθείσες Ευχαριστίες 31
Χρησιμοποιώντας την βιβλιοθήκη BeautifulSoup:
from bs4 import BeautifulSoup
import urllib2
 
html_page = urllib2.urlopen("http://www.in.gr")
soup = BeautifulSoup(html_page, "html5lib")
for link in soup.findAll('a'):
    print link.get('href')
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Χρειαζομαι λιγη βοηθεια 2 Χρόνια 8 Μήνες πριν #3590

  • daffaras
  • Το Άβαταρ του/της daffaras
  • Αποσυνδεμένος
  • p_____
  • Δημοσιεύσεις: 2
Μας ζηταει να το κανουμε με reqular expressions.1. Επιλέξτε μια δοκιμαστική ιστοσελίδα με αρκετούς συνδέσμους. Φορτώστε ολόκληρη την
ιστοσελίδα σε ένα string. Αν φορτώνετε την ιστοσελίδα από το web, μπορείτε να το κάνετε ως εξής:
Στη συνέχεια, χρησιμοποιήστε regular expression(s) πάνω στο string που περιέχει το κείμενο της
σελίδας, για να ανακτήσετε τα ζητούμενα μέρη. Στο τέλος, τυπώστε τα URL links και το αντίστοιχο
κείμενο του καθενός.Στην κλήση της μεθόδου compile προσθέστε ως δεύτερο όρισμα το re.DOTALL,
επιτρέποντας το ταίριασμα της τελείας (.) και με το newline (ιδιαίτερα βολικό, εφόσον έχετε όλη την
ιστοσελίδα σε ένα string, το οποίο περιέχει ενδιάμεσα newlines):
rexp = re.compile(restr,re.DOTALL)
Σχετικό είναι και το re.IGNORECASE, το οποίο επιτρέπει το ταίριασμα ανεξάρτητα κεφαλαίων-πεζών.
Αν θέλετε να το συνδυάσετε με το προηγούμενο flag, χρησιμοποιήστε το | (bit-wise OR).
Υπόδειξη 2: Ένας crawler χρειάζεται τα URLs σε απόλυτη μορφή (http://..) ενώ συχνά οι ιστοσελίδες
περιέχουν σχετικά links (με βάση τη διεύθυνση της τρέχουσας ιστοσελίδας). Για να αντιμετωπίσετε την
τελευταία περίπτωση χρησιμοποιήστε την urllib.parse.urljoin(), δείτε π.χ. το παράδειγμα που ακολουθεί:
Δες το λιγο και σε παρακαλω δωσε μου μια λυση σε ευχαριστω παρα πολυ για τον χρονο που διαθετεις :)
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Χρειαζομαι λιγη βοηθεια 2 Χρόνια 8 Μήνες πριν #3592

  • kamar
  • Το Άβαταρ του/της kamar
  • Αποσυνδεμένος
  • python
  • Δημοσιεύσεις: 405
  • Ληφθείσες Ευχαριστίες 87
Δες εδώ.

Όπως γράφω αυτό είναι ενδεικτικό αλλά είναι μια αρχή.

Μάλλον είστε στην ίδια σχολή ή έχετε τον ίδιο καθηγητή. :)
Γράφω σε Python 3
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.347 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου