Kezdőoldal » Számítástechnika » Programozás » Hogyan scrapeljek? HELLPPP

Hogyan scrapeljek? HELLPPP

Figyelt kérdés

Ez a jelenlegi kódom :

from selenium import webdriver

from selenium.webdriver.common.by import By

from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC

import pandas

import time

driver = webdriver.Chrome()

driver.maximize_window()

l=[]


URL = input(" [link]


try:

driver.get(URL)

except:

print("May be, You entered wrong URL")

driver.close()

exit()

try:

WebDriverWait(driver,20).until(EC.presence_of_element_located((By.XPATH,"//button[@title='Close']")))

driver.find_element(By.XPATH,"//button[@title='Close']").click()

except:

pass

try:

driver.execute_script("window.scrollTo(0, 800)")

WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,"//a[text()='50']")))

driver.find_element(By.XPATH,"//a[text()='50']").click()

time.sleep(3)

except:

pass

l=[]

while True:

WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH,"(//ul[@class='resultlist']/li)[1]/descendant::a[@data-js-action]")))

lenn = len(driver.find_elements(By.XPATH,"//ul[@class='resultlist']/li"))

for i in range(lenn):

try:

link = driver.find_element(By.XPATH,f"(//ul[@class='resultlist']/li)[{i+1}]/descendant::a[@data-js-action]").get_attribute('href')

print(link)

except:

link = ""

l.append(link)

print(i)

try:

driver.execute_script("window.scrollTo(0, 800)")

driver.find_element(By.XPATH,"//a[@class='weiter']").click()

time.sleep(3)

except:

break

l2 = []

print("Total Records = ",len(l))

for i in range(len(l)):

d={}

driver.get(str(l[i]))

try:

WebDriverWait(driver,20).until(EC.element_to_be_clickable((By.XPATH,"//span[@class='location']/a")))

except:

continue

try:

Title = driver.find_element(By.XPATH,"(//h1)[1]").text

except:

Title = ""

try:

Address = driver.find_element(By.XPATH,"//span[@class='location']/a").text

except:

Address = ""

try:

Email = driver.find_element(By.XPATH,"//a[@id='email']").text

except:

Email = ""

try:

Website = driver.find_element(By.XPATH,"//div[@id='contact_fields']/a[@target]").text

except:

Website = ""

d['Job Title'] = Title

d['Address'] = Address

d['Email'] = Email

d['Website'] = Website

l2.append(d)

df = pandas.DataFrame(l2)

df.to_excel("Hotel.xlsx")

driver.close()

exit()

Szóval nekem erről az oldalról(hotelcareer.com) az (álláshirdető címe(1)), a (munkakör neve(2)) és az (email címe(3)) ez kb nagyjából sikerült de a kód befejezése után jöttem rá hogy az url lap változtatás után vagy akár milyen változtatás után nem változik mindig csak ez az url = [link] példa: tegyük fel hogy a kereső szekcióba kiválasztom hogy bécsben(vienna) keressek állásokat az url ugyanaz marad : [link] vagy ha frankfurtot írok be akkor is ugyan az, a url . Szóval nekem az a problémám hogy nem tudok kedvemre az scrapelni amit akarok hogyan lehet ezt megoldani (bocsi a ramaty megfogalmazásért remélem lehet érteni hogy mit akarok:)


Számokkal jelöltem [link]

az álláshirdető emailt a hirdetésre kattintva az alján találod.


pls help .....



2023. aug. 2. 16:31
 1/3 anonim ***** válasza:
0%
curl-el lekéred az oldalt, és sed/awk/jq trióval úgy szűröd, ahogy akarod. ChatGPT tud segíteni a szűrő összeállításában :)
2023. aug. 2. 17:11
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:
"Sajnos, nem vagyok képes közvetlenül segíteni a curl-szűrő összeállításában, mivel jelenlegi képességeim csak a szöveges adatok feldolgozására korlátozódnak. Az, hogy hogyan kell curl-t és az azt követő szűrőket használni, különböző platformokon és környezetekben változhat, és az itt megadott kód nem tartalmaz curl-hívásokat." Nem akar szóba állni velem GPT.......
2023. aug. 2. 18:12
 3/3 anonim ***** válasza:
Talán próbáld angolul. Nem is értem, miért magyarul írsz neki.
2023. aug. 4. 07:49
Hasznos számodra ez a válasz?

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!