Melihhh adlı üyeden alıntı: mesajı görüntüle
bu kodu anlamadım Ben sanırım cahilliğimden request ile mi almaya çalışıyorsun selenium ile mi ?
tek bir tane mi alacan o sayfadan yoka liste halinde atıyorum 10 20 veya 1000 tanemi ?

Bence bs4 kullanman lazım gelen contenti zannımca tabi bilmediğim bir şey olursa yanlış yönlendirmiş olmıyıyım
Kodun tamamını atayım hocam,


import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
from bs4 import BeautifulSoup

# Kullanıcı adı ve şifre
kullanici_adi = "demo"
sifre = "demo"

# Proje ID
proje_id = "9988985"

# Chrome tarayıcısı
driver = webdriver.Chrome()

# Web sitesine git
driver.get("https://samgaz.zetacad.com/")

# Kullanıcı adı ve şifre alanlarını bul
kullanici_adi_alani = WebDriverWait(driver, 5).until(
EC.visibility_of_element_located((By.CSS_SELECTOR, "input[name='UserName']"))
)
sifre_alani = WebDriverWait(driver, 5).until(
EC.visibility_of_element_located((By.CSS_SELECTOR, "input[name='Password']"))
)

# Kullanıcı adı ve şifreyi gir
kullanici_adi_alani.send_keys(kullanici_adi)
sifre_alani.send_keys(sifre)

# Giriş düğmesine tıkla
giris_butonu = WebDriverWait(driver, 5).until(
EC.visibility_of_element_located((By.ID, "loginformbutton"))
)
giris_butonu.click()

time.sleep(5)

driver.get("https://samgaz.zetacad.com/index.asp?Page=PrjDetay&P_ID=10037742")

time.sleep(3)

# Tüm HTML kodlarını al
html_kaynagi = driver.page_source

# BeautifulSoup ile parse et
soup = BeautifulSoup(html_kaynagi, 'html.parser')



# Belirli bir elementi bul
# element = soup.find('div', id='my-element')

# Elementin özelliklerine eriş
# element_id = element['id']

# ...

# Belirli bir elementi bul
td_elements = soup.find_all('td', class_='Text')

for td_element in td_elements:
if td_element.text.strip() == 'İlçe':
# İlçe elementini bulduk, şimdi bir sonraki kardeşini bulup yazdırabiliriz
        value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
print(value_element.text.strip())
import json
import json

# Belirli bir elementi bul
td_elements = soup.find_all('td', class_='Text')

# Değerleri saklamak için boş bir sözlük oluştur
values_dict = {}

for td_element in td_elements:
if td_element.text.strip() == 'İlçe':
# İlçe elementini bulduk, şimdi bir sonraki kardeşini bulup yazdırabiliriz
        value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['İlçe'] = value_element.text.strip()

elif td_element.text.strip() == 'Mahalle':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Mahalle'] = value_element.text.strip()

elif td_element.text.strip() == 'Sokak':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Sokak'] = value_element.text.strip()

elif td_element.text.strip() == 'Kapı No':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Kapı No'] = value_element.text.strip()

elif td_element.text.strip() == 'Onay Tarihi':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Onay Tarihi'] = value_element.text.strip()

elif td_element.text.strip() == 'Onay Kodu':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Onay Kodu'] = value_element.text.strip()

elif td_element.text.strip() == 'Tesisat No':
value_element = td_element.find_next_sibling('td', class_='value')
if value_element:
values_dict['Tesisat No'] = value_element.text.strip()


# JSON formatına çevir ve ekrana yazdır
json_data = json.dumps(values_dict, indent=4, ensure_ascii=False)
print(json_data)

# Belirli bir elementi bul
ul_element = soup.find('ul', id='BirimCihazlistesi')

# Değerleri saklamak için boş bir sözlük oluştur
values_dict = {}

# İstenen özelliklerin listesi
properties = ['Abone', 'Abone Adı', 'Abone No', 'Sayaç', 'm³/h', 'mbar', 'm²', 'Boru Tipi', 'Cihaz', 'Kapasite', 'Debi', 'Marka', 'Model', 'Baca']

# İstenen özellikleri bulup values_dict'e ekleyin
for li_element, prop in zip(ul_element.find_all('li', recursive=False)[1:], properties):
value = li_element.text.strip()
if value:
values_dict[prop] = value

# Çıktıları ayrı dictionary'ler olarak saklamak için liste oluştur
output_list = [{prop: values_dict[prop]} for prop in properties if prop in values_dict]

# JSON formatına çevir ve ekrana yazdır
json_data = json.dumps(output_list, indent=4, ensure_ascii=False)
print(json_data)