Scraping Webpages in Python with Beautiful Soup
Résolu
tom@
Messages postés
219
Statut
Membre
-
tom@ Messages postés 219 Statut Membre -
tom@ Messages postés 219 Statut Membre -
Bonjour,
je souhaiterais que vous preniez attention à ce post.
Pour faire simple, il sagit de scraping avec python.
Dans les faits, avec python, charger le contenu d'une page HTML dans une variable , puis faire un traitement.
Dans ce cas, beautifullsoup est utilisé.
Pour résumer, une requette est envoyée à un lien pour permettre de stocker une page HTML (integralement) dans un fichier désigné.
J'y suis parvenu avec ce code :
Résultat:
Le langage python est le pus approprié à mes attentes.
J'aurais besoin d'un coup de pousse!
Mon but est d'utiliser Beautifulsoup pour le stockage de pages dans un fichier particulier, avant de faire un traitement par la suite.
Je sollicites votre aide pour comprendre une erreur avec le code suivant...
L'erreur est :
Le script est :
Si vous pouvez me donner des indices je vous serait gré.
Je continue mes recherches.
Merci.
Cordialement,
Tom@
je souhaiterais que vous preniez attention à ce post.
Pour faire simple, il sagit de scraping avec python.
Dans les faits, avec python, charger le contenu d'une page HTML dans une variable , puis faire un traitement.
Dans ce cas, beautifullsoup est utilisé.
Pour résumer, une requette est envoyée à un lien pour permettre de stocker une page HTML (integralement) dans un fichier désigné.
J'y suis parvenu avec ce code :
import os
import csv
import requests
from bs4 import BeautifulSoup
def liens ():
listeliens=["https://link.tld","http://link.tld"]
return listeliens
extention = ".csv"
i = 0
j = len(liens())
for adr in liens():
while i<j:
nomfichier = str(i) + extention
print nomfichier
with open (nomfichier.decode("utf-8"),"w") as contenu:
ecrire = csv.writer(contenu)
i+=1
Résultat:
~/Documents/python/test$ python htmlUp.py
0.csv
1.csv
Le langage python est le pus approprié à mes attentes.
J'aurais besoin d'un coup de pousse!
Mon but est d'utiliser Beautifulsoup pour le stockage de pages dans un fichier particulier, avant de faire un traitement par la suite.
Je sollicites votre aide pour comprendre une erreur avec le code suivant...
L'erreur est :
Traceback (most recent call last):
File "htmlUp2.py", line 25, in <module>
soup = BeautifulSoup.BeautifulSoup(html)
AttributeError: type object 'BeautifulSoup' has no attribute 'BeautifulSoup'
Le script est :
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import csv
import ssl
import requests
from urllib2 import urlopen
from bs4 import BeautifulSoup
def liens ():
listeliens=["https://lien1.tld","http://lien1.tld"]
return listeliens
extention = ".csv"
i = 0
j = len(liens())
for adr in liens():
while i<j:
context = ssl._create_unverified_context()
html = urlopen(adr, context=context).read()
soup = BeautifulSoup.BeautifulSoup(html)
nomfichier = str(i) + extention
print nomfichier
with open (nomfichier.decode("utf-8"),"w") as contenu:
ecrire = csv.writer(soup)
i+=1
Si vous pouvez me donner des indices je vous serait gré.
Je continue mes recherches.
Merci.
Cordialement,
Tom@
A voir également:
- Scraping Webpages in Python with Beautiful Soup
- Citizen code python avis - Accueil - Outils
- Navigation in private - Guide
- Aux in ✓ - Forum Enceintes / HiFi
- Peut-on brancher un casque sur une prise auxiliaire ? - Forum Casque et écouteurs
- Dc in - Forum Disque dur / SSD
1 réponse
Bonjour
Ne serait-ce pas plutôt :
dixit la doc : https://beautiful-soup-4.readthedocs.io/en/latest/
Ne serait-ce pas plutôt :
soup = BeautifulSoup(html_doc, 'html.parser')
dixit la doc : https://beautiful-soup-4.readthedocs.io/en/latest/
tom@
Messages postés
219
Statut
Membre
50
merci beaucoup. Cela fonctionne bien maintenant. Il y avez aussi une autre erreur de ma part. La variable de la méthode writer() était mal désignée. C’était la variable 'html' à la place.