Neler Yeni

Öneri Chatgpt kullanarak amazon indirimli ürünleri listeleyen code yazdım.

uomerlutfi

80+ Silver
Katılım
23 Mart 2020
Mesajlar
2,456
Dahası  
Reaksiyon skoru
1,132
Konum
ANTALYA-KASTAMONU
İsim
Ömer Lütfi Ülker
İlgilendiği Kategoriler
bilgisyaarlar - bilgisayar bileşenleri
Instagram
instagram.com/omerlutfiulker
Hocam exel'e yazmak için gerekli kütüphane yok. pip ile rahatça kurabilirsin
evet bende onu fark ettım kurdum hemen . onu da ekleyebılırsı bence en basta gereklı kutuphanelere :)
Mesaj otomatik birleştirildi:

size xlsxwriter kütüphanesini kurmanızı istiyor onu koymayı unutmuşum pardon benim hatam
haha problem yok bende de var biraz
Mesaj otomatik birleştirildi:

ortalama ne kadar sürüyor ürünleri çekmesi?
 

PcKedy

80+
Katılım
12 Mart 2023
Mesajlar
13
Dahası  
Reaksiyon skoru
13
İsim
nurullah
kodu baaşarıyla çalıştırabildinmi
evet bende onu fark ettım kurdum hemen . onu da ekleyebılırsı bence en basta gereklı kutuphanelere :)
Mesaj otomatik birleştirildi:


haha problem yok bende de var biraz
Mesaj otomatik birleştirildi:

ortalama ne kadar sürüyor ürünleri çekmesi?
 

uomerlutfi

80+ Silver
Katılım
23 Mart 2020
Mesajlar
2,456
Dahası  
Reaksiyon skoru
1,132
Konum
ANTALYA-KASTAMONU
İsim
Ömer Lütfi Ülker
İlgilendiği Kategoriler
bilgisyaarlar - bilgisayar bileşenleri
Instagram
instagram.com/omerlutfiulker
excel dosyasını klasore olusturuyor ama ıcerısıne urunlerı çekmıyor suan
 

Quiwick

80+ Silver
Katılım
18 Temmuz 2022
Mesajlar
2,630
Dahası  
Reaksiyon skoru
1,035
İsim
Emre
Merhaba Daha önceden Trendyol olanı için yapmıştım ama amazon yapman daha mantıklı olur dendi bende amazon olanını yaptım.

önceki attığım konum burada!


KODUN AMAZON İNDİRİMLİ ÜRÜNLERİ LİSTELEDİĞİ EXCEL DOSYASI ÖRNEK:



kurulum:

öncelikle python 3 kurmanız ve şu kütüphaneleri yüklemeniz lazım

BeautifulSoup,bs4,pandas,requests,openpyxl,xlsxwriter

kütüphane nasıl yüklenir:

python yükledikten sonra herhangi bir yerden cmd açıp

pip install kütüphane ismi

birde python editörü lazım visual code indirebilirsniz. (kod dosyasının bulunduğu yere komut istemi (cmd) açıpta çalıştırabilirsiniz)
onu nasıl yaparsınız onu anlatıyım:

bir klasöre girin üste diziin yazan yere (C:\Users\Administrator\Desktop\python) yani buraya (cmd yazın ve enterlayın)
sonra python dosyaismi.py diyip çalıştırın.

Kod:
import requests
from bs4 import BeautifulSoup
import pandas as pd

headers = {
    'accept-language': 'tr-TR,tr;q=0.9',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36',
    'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
    'accept-encoding': 'gzip, deflate, br'
}

url = 'https://www.amazon.com/s?i=electronics-intl-ship&bbn=16225009011&rh=n%3A16225009011%2Cn%3A541966&page=2&language=en_US&currency=TRY&qid=1679175799&ref=sr_pg_{}'

data = []

for page in range(1, 6):  # İlk 5 sayfa için listeleme yapılıyor
    response = requests.get(url.format(page), headers=headers)
    soup = BeautifulSoup(response.text, 'html.parser')

    products = soup.find_all('div', {'class': 'a-section a-spacing-base'})

    for product in products:
        try:
            name = product.find('span', {'class': 'a-size-base-plus a-color-base a-text-normal'}).text.strip()
            original_price = float(product.find('span', {'class': 'a-price a-text-price'}).find('span', {'class': 'a-offscreen'}).text.replace('$', ''))
            discounted_price = float(product.find('span', {'class': 'a-price'}).find('span', {'class': 'a-offscreen'}).text.replace('$', ''))

            difference = original_price - discounted_price
            difference_percent = round((difference / original_price) * 100)

            data.append([name, original_price, discounted_price, difference, difference_percent])
        except AttributeError:
            continue

df = pd.DataFrame(data, columns=['Ürün İsmi', 'Orjinal Fiyatı', 'İndirimli Fiyatı', 'İndirim Farkı', 'İndirim Oranı'])

# Fiyat sütunlarına dolar işareti ekle
df[['Orjinal Fiyatı', 'İndirimli Fiyatı', 'İndirim Farkı']] = df[['Orjinal Fiyatı', 'İndirimli Fiyatı', 'İndirim Farkı']].applymap('${:,.2f}'.format)

# İndirim Oranı sütununa yüzdelik işareti ekle
df['İndirim Oranı'] = df['İndirim Oranı'].apply(lambda x: str(x) + '%')

# Verileri Excel dosyasına kaydet
writer = pd.ExcelWriter('Amazon_İndirimli_Ürün_Listesi.xlsx', engine='xlsxwriter')
df.to_excel('Amazon_İndirimli_Ürün_Listesi.xlsx', index=False, engine='openpyxl')

yapmanız gereken 2 değişiklik var 1. url 2. ise kaç sayfa veri çekceğini ayarlamaktır

amazonda bir kategori seçtiniz ve filtrelediniz biraz aşağı inip 2. sayfaya geçiyoruz ve url sonu pg_5 şeklinde bitecek bunu koddaki url ye ekliyoruz ama 5 kısmını siliyoruz. (tamamen örnektir.)

Kod:
url = 'https://www.amazon.com/s?i=electronics-intl-ship&bbn=16225009011&rh=n%3A16225009011%2Cn%3A541966&page=2&language=en_US&currency=TRY&qid=1679175799&ref=sr_pg_{}'
sonraki değiştireceğimiz şey ise sayfa aralığı 1 ile 6 sayfalarının hepsini listelesin dersek 1-5 daki tüm indirimli ürünleri listeler

örnek:
Kod:
for page in range(1, 6)

son işlem çalıştırmak.

ve biraz bekleyin listeleyip excele aktarsın.

UMARIM İYİ ANLATABİLMİŞİMDİR.
Hocam videolu anlatım fena olmaz ama yinede size kalmış.
Ellerinize sağlık bu arada.
 

Skydep

80+
Katılım
25 Şubat 2023
Mesajlar
15
Dahası  
Reaksiyon skoru
3
İsim
Skydep skydep
Hocam onu tepeye yazmayacaksınız :D pip install XlsxWriter şunu yazıp kurun
 

PcKedy

80+
Katılım
12 Mart 2023
Mesajlar
13
Dahası  
Reaksiyon skoru
13
İsim
nurullah
evet bende onu fark ettım kurdum hemen . onu da ekleyebılırsı bence en basta gereklı kutuphanelere :)
Mesaj otomatik birleştirildi:


haha problem yok bende de var biraz
Mesaj otomatik birleştirildi:

ortalama ne kadar sürüyor ürünleri çekmesi?
15sn en fazla tabi skaç sayfa çekmek istediğinize bağlı oalrak değişir
 

uomerlutfi

80+ Silver
Katılım
23 Mart 2020
Mesajlar
2,456
Dahası  
Reaksiyon skoru
1,132
Konum
ANTALYA-KASTAMONU
İsim
Ömer Lütfi Ülker
İlgilendiği Kategoriler
bilgisyaarlar - bilgisayar bileşenleri
Instagram
instagram.com/omerlutfiulker
15sn en fazla tabi skaç sayfa çekmek istediğinize bağlı oalrak değişir
anladım beklıyorum bakalım suan. dosyayı verı cekmesını
Mesaj otomatik birleştirildi:

trendyol olan sorunsuz calıstı ama bunda halen daha aksiyon alamadım
 

PcKedy

80+
Katılım
12 Mart 2023
Mesajlar
13
Dahası  
Reaksiyon skoru
13
İsim
nurullah
anladım beklıyorum bakalım suan. dosyayı verı cekmesını
bu arada cmd yani komut isteminden yapıyorsanız pythonu çalıştıdıktan sonra komut isteminde herhangi bir yere tıkladıysanız iptal olmuştur ve durmuştur. yani boşyere beklemeyin
Mesaj otomatik birleştirildi:

video da eklemeyi düşündüm
Mesaj otomatik birleştirildi:

yapılması için
 

Quiwick

80+ Silver
Katılım
18 Temmuz 2022
Mesajlar
2,630
Dahası  
Reaksiyon skoru
1,035
İsim
Emre
bu arada cmd yani komut isteminden yapıyorsanız pythonu çalıştıdıktan sonra komut isteminde herhangi bir yere tıkladıysanız iptal olmuştur ve durmuştur. yani boşyere beklemeyin
Mesaj otomatik birleştirildi:

video da eklemeyi düşündüm
Mesaj otomatik birleştirildi:

yapılması için
Hocam video olabilir en azından ben bu şekilde becerebileceğimi düşünmüyorum ne pyhton hakkında bilgim var ne visual code hakkında.
 

xmert96x

80+ Bronze
Katılım
29 Ocak 2022
Mesajlar
1,649
Dahası  
Reaksiyon skoru
896
Konum
Edirne/Uzunuköprü
İsim
Mert Çevik
fena değil kod ama yetersiz sadece önceki fiyatı yazılan ürünleri buluyor keşke piyasa fiyatının altında olan tüm ürünleri bulsa kod o zaman mükemmel olur
 

Pariah

80+
Katılım
22 Haziran 2022
Mesajlar
130
Hocam video olabilir en azından ben bu şekilde becerebileceğimi düşünmüyorum ne pyhton hakkında bilgim var ne visual code hakkında.
Önce Python
pip
Kod:
python get-pip.py
xlswriter
Kod:
pip3 install xlsxwriter
veya
Kod:
pip install xlsxwriter
Path içinde python dosya klasörü olduğuna emin olunmalı
sonra bu arkadaşın attığı kodu boş bir text dosyasına atıp yapıştırıp dosya uzantısını py olarak kaydet. urunlistele.py mesela. Sonra o klasöre gidip bu dosyayı kaydettiğini klasöre orada bir cmd prompt açacaksın. Veya cmd prompt açıp
Kod:
cd "içinde urunlistele.py olan klasor"
veya direkt bu urunlistele.py klasörünü users/<kullanıcıadı> klasörünün altına at, cmd normal olarak orada açılır.
Kod:
python urunlistele.py



Veya vs code yükleyip python package yüklene de bilir
 
Top Bottom