Ich habe versucht, die Website unten zu kratzen, aber einige Probleme.Ich kann nicht finden, wie sie die Liste der empresas (in Englisch: Unternehmen) bauen, die sie zeigen.
Wenn ich eine Kategorie auswähle und das Formular abschicke, ändert sich die URL nicht, ich habe versucht, in der Anfrage nachzusehen, aber keinen Erfolg (kein Webentwickler hier).Wie scrape Javascript dynamische Website
http://www.vitrinedoexportador.gov.br
Ich habe zuerst versucht, alle Links auf der Webseite zu gehen. Die erste Herangehensweise, die ich ausprobiert habe, war die Umsetzung aller URLs. Sie haben diese Syntax. "http://www.vitrinedoexportador.gov.br/bens/ve/br/detalhes/index/cdEmpresa/" + 6-stelliger Code + "#inicio".
Aber ich denke, das Ausprobieren 999999 Möglichkeiten wäre ein falscher Weg, um das Problem zu lösen. Der nächste Ansatz, den ich versuche, ist Navigieren durch die Seiten mit Selen-Webdriver. mit dem folgenden Code:
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from bs4 import BeautifulSoup
import time
browser = webdriver.Firefox()
browser.get('http://www.vitrinedoexportador.gov.br/bens/ve/br#a')
# navigate to the page
select = Select(browser.find_element_by_id('cdSetor'))
print (select.options)
for opt in select.options:
print (opt.text)
opt.click()
if(opt.text != 'Escolha'):
opt.submit()
time.sleep(5) # tem q colocar esse para a página poder carregar.
listaEmpresas = browser.find_elements_by_tag_name("h6")
for link in listaEmpresas:
print(link)
print (listaEmpresas)
listaEmpresas[0].click()
Aber seens unglaublich langsam, und ich kann nur noch einen companie bekommen, ist es eine intelligente Art und Weise, dies zu tun?
Andere Ansatz, den ich ausprobiert habe, ist Schrott verwenden, kann ich bereits eine ganze companie Seite mit allen Feldern analysieren, die ich will. Also, wenn ihr mir auf dem Weg hilft, alle IDS zu bekommen, dann kann ich mein bereits eingebautes Scrapy-Projekt analysieren.
Vielen Dank.
Ich mache so, wie Sie gesagt haben. Gibt es einen Vorschlag, Selen schnell laufen zu lassen? – WagnerAlbJr
Nein ... viel Glück – Tico