folder Tahribat.com Forumları
linefolder İş - Güç, E-Ticaret, Alışveriş
linefolder Web Sitesindeki Tablolardan Veri Alma / Excele Kaydetme - Ücretli



Web Sitesindeki Tablolardan Veri Alma / Excele Kaydetme - Ücretli

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    tuncaxxz
    tuncaxxz's avatar
    Kayıt Tarihi: 23/Ağustos/2005
    Erkek

    Merhabalar hocalar,

    Ufak bir program ihtiyacım var. Bir sayfadan bir kaç veri okumam gerekiyor. Veriler aynı sayfada farklı tablolarda, excelde her bir tablo için ayrı ayrı fonksiyon oluşturup alabiliyorum ama çok uğraştırıcı oluyor. 

    İstediğim kısaca şöyle;

    Liste olarak bağlantıları vereceğim, her bir bağlantı için sayfadan istediğim verileri çekip excel dosyası olarak bana geri verecek. 

    Örnek link: https://www.lcsc.com/product-detail/Microcontroller-Units-MCUs-MPUs-SOCs_Raspberry-Pi-RP2040_C2040.html

    Bana lazım olanlar: Manufacturer, LCSC Part #, Package, Description, Minimum Order, Quantity - Unit Price,  Stock ve Stock bilgisinin alındığı tarih. 

    Verdiğim linkler için bu verilerin olduğu tablo gibi bir excel çıktısı istiyorum.

    Package veya description bilgileri boş olabiliyor bazılarının, boş olduğunda yok/NaN gibi bir şey koyulabilir tabloya. 

    Quantity ve Unit price her link için değişebiliyor. Bazılarında Qty. 1+ 10+ 100+ olurken bazılarında 5+ 10+ 50+ olabiliyor. Bunlardan farklı da olabilir.  (Ext. Price lazım değil)

    Hangi dilde yazıldığı önemli değil. Linkleri excel, txt yada csv olarak verebilirim yada arayüz olacaksa direkt bir text kutusuna yapıştırabilirim. 

    Havada kalan bir yer var mı bilmiyorum ama sorabilirsiniz. Ücret ve süre bilgisi için ÖM atabilirsiniz. 


    punto cero
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    iskeltan
    iskeltan's avatar
    Kayıt Tarihi: 15/Haziran/2016
    Erkek

    edit: ulan o kadar script yazdiydim buranin insert code kismindan, kodu ucurmus :( ama olsun bu url tek basina is gorur aslinda.

    edit2: scripti duzenledim calisiyor. bi klasor icerisinde codes.txt ve choosen_params.txt yapman lazim, bunlarin da ici soyle olmali:

    codes.txt: 

    [
        "C2040"
    ]
    

     

    choosen_params.txt: (alttaki linkte paramVOList icindeki ParamNameEn karsiliklari yani)

    [
    	"RAM Size",
    	"ADC (Bit)",
    	"GPIO Ports Number"
    ]

    sonuc:

     

    bu mesaji chatgpt'ye atsan muhtemelen ciktisini alirsin.

    sayfayi acip network'e bakinca bir url gordum, recommendation icin bir yere istek atiyor, o url'deki others kismini silince soyle bir url'e ulastim:

     

    https://wmsc.lcsc.com/wmsc/product/detail?productCode=C2040

     

    buraya girdigin zaman sanirim butun detaylari gorebiliyorsun. devaminda yapman gereken soyle bir script kosmak olabilir:

     

    import json
    import requests
    
    product_codes = json.load(open("codes.txt"))
    choosen_params = json.load(open("choosen_params.txt"))
    url_format = "https://wmsc.lcsc.com/wmsc/product/detail?productCode={code}"
    def get_data(url, choosen_params):
        req = requests.get(url)
        data = req.json()
        try:
            params = data["result"]["paramVOList"]
        except KeyError:
            return {}
        
        result = []
        for param in choosen_params:
            filtered_data = filter(lambda x: x["paramNameEn"] == param, params)
            try:
                filtered_data = list(filtered_data)[0]
            except IndexError:
                continue
            yield {"name": param, "value": filtered_data["paramValueEn"]}
    
    csv_data = ["product_code, key, value"]
    for code in product_codes:
        data_list = get_data(url=url_format.format(code=code), choosen_params=choosen_params)
        for d in data_list:
            csv_data.append(f"{code}, {d['name']}, {d['value']}")
    
    with open("data.csv", "w") as f:
        f.write("\n".join(csv_data))

     

     

    iskeltan tarafından 24/Ağu/23 16:22 tarihinde düzenlenmiştir

    duanla yasamadim ki bedduanla oleyim - Arif
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    yolbulucu
    yolbulucu's avatar
    Kayıt Tarihi: 06/Nisan/2007
    Homo

    exceli aç , veri kısmından verileri al > web i seç. url yi gir. tabloyu seçip alabilirsin direkt


    29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    tuncaxxz
    tuncaxxz's avatar
    Kayıt Tarihi: 23/Ağustos/2005
    Erkek
    yolbulucu bunu yazdı

    exceli aç , veri kısmından verileri al > web i seç. url yi gir. tabloyu seçip alabilirsin direkt

    Hocam bunu yapabiliyorum ama her tablo için ayrı ayrı yapmam lazım. 


    punto cero
Toplam Hit: 496 Toplam Mesaj: 4
excel