Herkese merhaba. Asp.net framework'u ile yapılmış bir siteden ürünlerin resmini, başlığını, barkod kodunu ve fiyatını çekmek için bir kod yazmaya çalışıyorum. Kod çalışıyor hiçbir hata vermiyor fakat urunler.csv içerisinde sadece çekmek istediğim verilerin başlığı yazıyor. "urunler.csv içi: Ürün Barkod Kodu,Ürün Adı,Fiyat,Ürün Resmi" Bu sorunu nasıl çözebilirim. Kodu inceler misiniz, nerede hata yapıyorum. Acil ürünleri siteme yüklemem gerekiyor yardımcı olursanız çok sevinirim çok teşekkür ederim.
Kodum:
import csv
import requests
from bs4 import BeautifulSoup
email = "eposta adresimi yaziyorum"
password = "sifremi yaziyorum"
login_url = "login sayfasının urlsini giriyorum"
products_url = "urunlerin bulundugu sayfanin urlsini giriyorum"
login_data = {
"Email": email,
"Password": password
}
with requests.Session() as session:
login_response = session.post(login_url, data=login_data)
if login_response.status_code == 200:
products_response = session.get(products_url)
if products_response.status_code == 200:
soup = BeautifulSoup(products_response.content, "html.parser")
products = soup.find_all("div", class_="col-lg-3 col-md-6 mb-r")
with open("urunler.csv", "w", newline="", encoding="utf-8") as csvfile:
writer = csv.writer(csvfile)
writer.writerow(["Ürün Barkod Kodu", "Ürün Adı", "Fiyat", "Ürün Resmi"])
for product in products:
product_name = product.find("h5", class_="card-title").text.strip()
product_barcode = product.find("a", class_="text-muted").text.strip()
product_price = product.find("del", class_="discount").text.strip()
product_image = product.find("img")["src"]
writer.writerow([product_barcode, product_name, product_price, product_image])
print("Veriler 'urunler.csv' dosyasına kaydedildi.")
else:
print("Ürünler sayfasına erişilemiyor.")
else:
print("Oturum açma başarısız.")