Vous pouvez utiliser un mélange de modules tels que urllib, beautifulsoup et PDFMiner pour réaliser votre tâche.
Il suffit de suivre les étapes suivantes. Utilisez urllib pour obtenir le html de la page d’accueil du site web.
from urllib.request import urlopen
html= urlopen("http://www.google.com")
Pour créer un objet Beautifulsoup à partir de la chaîne html, le code devient :
from bs4 import BeautifulSoup
from urllib.request import urlopen
html= urlopen("http://www.google.com")
bsObj = BeautifulSoup(html)
Maintenant que vous avez l’objet BeautifulSoup, trouvez tous les liens de la page.
from bs4 import BeautifulSoup
from urllib.request import urlopen
html= urlopen("http://www.google.com")
bsObj = BeautifulSoup(html)
all_links_tags=bsObj.findAll('a')
all_links=[]
for x in all_links_tags:
all_links.append(x['href'])
Améliorez votre anonymat en ligne
Pensez à l'utilisation d'un VPN : une application VPN va changer votre adresse IP pour simuler celle de n'importe quel pays. Vous pourrez accéder à n'importe quel contenu, même celui qui est géo-restreint. Ce logiciel chiffre aussi votre trafic internet pour éliminer les malwares et les risques de piratage. Pensez à utiliser un gestionnaire de mots de passeNous avons donc maintenant un tableau qui contient les liens de toutes les pages de la page d’accueil. Il suffit de scanner le mot en html de la page, et de répéter les étapes pour tous les liens.
Téléchargez également les liens qui font référence à des fichiers pdf. Comme ceci.
from urllib.request import urlretrieve
from bs4 import BeautifulSoup
from urllib.request import urlopen
html= urlopen("http://www.google.com")
bsObj = BeautifulSoup(html)
all_links_tags=bsObj.findAll('a')
all_links=[]
pdf_paths=[]
for x in all_links_tags:
if(x['href'].endsWith(".pdf"):
#Download pdf files
urlretrieve(x['href'],x['href'].split('/')[-1])
pdf_paths.append(x['href'].split('/')[-1])
all_links.append(x['href'])
Maintenant adoptez une méthode pour scanner les fichiers pdf en utilisant PDFMiner, et une méthode pour scanner une chaîne de caractères. Utilisez les méthodes pour scanner le site web entier.
from urllib.request import urlretrieve
from bs4 import BeautifulSoup
from urllib.request import urlopen
html= urlopen("http://www.google.com")
bsObj = BeautifulSoup(html)
scanText(html)
all_links_tags=bsObj.findAll('a')
all_links=[]
pdf_paths=[]
for x in all_links_tags:
if(x['href'].endsWith(".pdf"):
#Download pdf files
urlretrieve(x['href'],x['href'].split('/')[-1])
pdf_paths.append(x['href'].split('/')[-1])
all_links.append(x['href'])
html=urlopen(x['href'])
scanText(html)
for x in pdf_paths:
scanPdf(x)
Faites-en une fonction, appliquez une récursion en utilisant all_links, et elle fonctionnera à l’infini sur un site web, en recherchant du texte dans son html et dans les fichiers pdf qu’il contient.