This commit is contained in:
2023-11-27 20:18:40 +01:00
parent 57cdc465b8
commit 4adba7d017
2 changed files with 52 additions and 41 deletions

View File

@@ -11,6 +11,20 @@ import shutil
restaurant_url='' restaurant_url=''
driver=''
page = ''
nrist=''
restaurant_address=''
tel=''
result=''
soup = ''
nome=[]
desc=[]
npezzi=[]
prezzo=[]
prezzoN=[]
def inputurl(): def inputurl():
global restaurant_url global restaurant_url
#INPUT #INPUT
@@ -21,15 +35,30 @@ def inputurl():
#restaurant_url = 'https://www.justeat.it/restaurants-pizzeriadelrondone-bologna/menu' #restaurant_url = 'https://www.justeat.it/restaurants-pizzeriadelrondone-bologna/menu'
nome=[] def scraper():
desc=[] global driver
npezzi=[] global page
prezzo=[] global restaurant_url
prezzoN=[] driver = webdriver.Chrome()
nrist='' driver.get(restaurant_url)
restaurant_address=''
tel='' wait = WebDriverWait(driver, 16)
result='' wait.until(EC.presence_of_element_located((By.CLASS_NAME, "c-menuItems-price")))
page = driver.page_source
with open('JEmenu.html', 'w') as f:
f.write(page)
def parser():
global soup
with open('JEmenu.html', 'r') as f:
page = f.read()
soup = BeautifulSoup(page, "html.parser")
def stora_tutto(): def stora_tutto():
global nome global nome
global desc global desc
@@ -105,31 +134,6 @@ def stora_tutto():
continue continue
driver=''
page = ''
def scraper():
global driver
global page
global restaurant_url
driver = webdriver.Chrome()
driver.get(restaurant_url)
wait = WebDriverWait(driver, 16)
wait.until(EC.presence_of_element_located((By.CLASS_NAME, "c-menuItems-price")))
page = driver.page_source
with open('JEmenu.html', 'w') as f:
f.write(page)
soup = ''
def parser():
global soup
with open('JEmenu.html', 'r') as f:
page = f.read()
soup = BeautifulSoup(page, "html.parser")
def parserdarubrica(): def parserdarubrica():
global parser global parser
global stora_tutto global stora_tutto
@@ -146,6 +150,7 @@ def parserdarubrica():
print ("numero inesistente") print ("numero inesistente")
continue continue
def stampa_liste(): def stampa_liste():
print("\n") print("\n")
for x in range(len(nome)): for x in range(len(nome)):
@@ -155,6 +160,7 @@ def stampa_liste():
print(npezzi[x]) print(npezzi[x])
print(prezzo[x]) print(prezzo[x])
def stampa_info(): def stampa_info():
print("-" * (len(desc)) + "\n") print("-" * (len(desc)) + "\n")
print(nrist) print(nrist)
@@ -173,6 +179,7 @@ def stampa_info():
doppione = (result[i+1]) doppione = (result[i+1])
print("\n" + "-" * (len(desc))+ "\n") print("\n" + "-" * (len(desc))+ "\n")
def genera_prezzoN(): def genera_prezzoN():
#Genera la lista prezzoN[] che è un clone di "prezzo[] ma con i valori float anzichè string" #Genera la lista prezzoN[] che è un clone di "prezzo[] ma con i valori float anzichè string"
prezzoN = prezzo.copy() prezzoN = prezzo.copy()
@@ -186,7 +193,6 @@ def genera_prezzoN():
prezzoN[i] = 99999 prezzoN[i] = 99999
def salvainrubrica(): def salvainrubrica():
maxn=0 maxn=0
def trova_nuovo_numero(): def trova_nuovo_numero():
@@ -247,11 +253,13 @@ def salvainrubrica():
rubrica.write(nristmax + '\n') rubrica.write(nristmax + '\n')
rubrica.write(nrist + '\n') rubrica.write(nrist + '\n')
rubrica.write(restaurant_url + '\n') rubrica.write(restaurant_url + '\n')
print ("\nIl ristorante",nrist +"+è stato salvato in rubrica")
else: else:
#PULISCE #PULISCE
os.remove("JEmenu.html") os.remove("JEmenu.html")
os.remove("rubrica.txt") os.remove("rubrica.txt")
############################################################################################# #############################################################################################
############################################################################################# #############################################################################################
############################################################################################# #############################################################################################
@@ -287,7 +295,6 @@ genera_prezzoN()
salvainrubrica() salvainrubrica()
# #PER DEBUG # #PER DEBUG
# for x in range(len(nome)): # for x in range(len(nome)):
# print(prezzoN[x]) # print(prezzoN[x])
@@ -307,6 +314,7 @@ salvainrubrica()
# print("\n" + "-" * 25 + "\n") # print("\n" + "-" * 25 + "\n")
#DA RIFARE
# # Genera codice HTML # # Genera codice HTML
# html = "<html><body>" # html = "<html><body>"
# for x in range(len(nome)): # for x in range(len(nome)):
@@ -336,4 +344,3 @@ salvainrubrica()

View File

@@ -7,12 +7,16 @@ echo
pip3 install requests pip3 install requests
pip3 install BeautifulSoup4 pip3 install BeautifulSoup4
pip3 install colorama
pip3 install selenium pip3 install selenium
#NON PIU UTILIZZATI #SCRAPEJE UTILIZZA I MODULI PREINSTALLATI:
#pip3 install cloudscraper # import re
#pip3 install json # import os
# import shutil
#NON PIU UTILIZZATI:
# pip3 install colorama
# pip3 install cloudscraper
# pip3 install json
echo "Installo chromium (se non già installato) necessario per lo scrape" echo "Installo chromium (se non già installato) necessario per lo scrape"
echo echo