• 02-04-2023, 18:12:40
    #1
    Aşağıda vermiş olduğum kodda belirtilen adrese gidip otomatik form dolduruyor verdiğim txtler içinden.
    Formun belirli bir kısmında itiraz için adresler belirtmem gerekiyor bu kısmında belirtilen div’e tıklatıp yeni bir input açtırdığım zaman yine gidip 1. inputa veriyi giriyor 10 input açtırıyorsam 1. input'a txt'den 1. veriyi 2. input'a txt'den 2.veriyi şeklinde girmeli ben 10 tane açtırıyorum genelde. Yani kısacası bütün eklenen inputlara aynı veriyi girme sorunu var. Ayrıca inputdaki verinin yanına +++ değilde txt içindeki verinin yanına +++ girilmeli.
    Txt verilerim şöyle
    http://xxx.com
    http://yyy.com
    http://asd.com

    Bir diğer sorun # İsim alanına rasgele bir isim girin kısmına girilen veri ile # İmza alanına rasgele bir isim girin verileri birbiriyle aynı olmalı yani eşleşmeli.


    Tüm bunlardan sonra submit edecek formun geri kalan kısmını ben yaptım ama burayı yapamadım.
    Bu eksikler düzeltilecek ücretli yardımcı olacaklar pm lütfen.

    from selenium import webdriver
    import time
    import random
    options = webdriver.ChromeOptions()
    options.add_argument('--ignore-certificate-errors')
    options.add_argument("--start-maximized")
    driver = webdriver.Chrome(options=options)
    # İstediğiniz adrese gidin
    driver.get('https://support.google.com/legal/contact/lr_counternotice?product=websearch')
    # Sınıfı seçmek için bekleyin
    time.sleep(1) # 1 saniye bekle
    select_div = driver.find_element_by_class_name('sc-select')
    select_div.click()
    # Seçeneği seçmek için bekleyin
    time.sleep(1) # 1 saniye bekle
    class_element = driver.find_element_by_xpath("//li[@id=':221']")
    class_element.click()
    # İsim alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('full_name')
    with open('random.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Unvan alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('your_title')
    with open('unvan.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Sirket alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('companyname')
    with open('sirket.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Mail alanına bir isim girin
    email_element = driver.find_element_by_id('contact_email_noprefill ')
    email_element.send_keys('asd@asd.com')
    # Adres alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('address')
    with open('address.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    # Telefon alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('phone')
    with open('phone.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(2) # 2 saniye bekle
    # Url'leri okuyun ve yazın
    with open('url.txt', 'r') as url_file:
    urls = url_file.readlines()
    url_index = 0
    for i in range(2):
    add_additional = driver.find_element_by_class_name('add-additional')
    add_additional.click()
    time.sleep(1) # 1 saniye bekle

    # Sonraki input alanını bulun
    next_input = driver.find_element_by_id('material_location')

    # Url'yi yazın ve sonuna +++ işaretini ekleyin
    next_input.send_keys(urls[url_index].strip() + ' +++')
    url_index += 1
    target_element = driver.find_element_by_id("dmca_clarifications_int ro--counternotice.clarify_owner")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    # Ayrıntı alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('dmca_clarifications')
    with open('sebep.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(2) # 2 saniye bekle
    target_element = driver.find_element_by_id("consent_statement1--dmca_consent_statement")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    target_element = driver.find_element_by_id("consent_statement2--dmca_consent_statementtwo")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    # İmza alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('signature')
    with open('random.txt', encoding='utf-8') as f:
    names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Tarayıcıyı kapatın
    # driver.quit()
  • 02-04-2023, 18:14:46
    #2
    v01d adlı üyeden alıntı: mesajı görüntüle
    Aşağıda vermiş olduğum kodda belirtilen adrese gidip otomatik form dolduruyor verdiğim txtler içinden.
    Söz konusu içeriğin URL'leri * kısmında yeni bir input açtırdığım zaman yine gidip 1. inputa veriyi giriyor 10 input açtırıyorsam 1. input'a txt'den 1. veriyi 2. input'a txt'den 2.veriyi şeklinde girmeli ben 10 tane açtırıyorum genelde. Ayrıca inputdaki verinin yanına +++ değilde txt içindeki verinin yanına +++ girilmeli.
    Txt verilerim şöyle
    http://xxx.com
    http://yyy.com
    http://asd.com
    Tüm bunlardan sonra submit edecek formun geri kalan kısmını ben yaptım ama burayı yapamadım.
    Bu bug düzeltilecek ücretli yardımcı olacaklar pm lütfen.

    from selenium import webdriver
    import time
    import random
    options = webdriver.ChromeOptions()
    options.add_argument('--ignore-certificate-errors')
    options.add_argument("--start-maximized")
    driver = webdriver.Chrome(options=options)
    # İstediğiniz adrese gidin
    driver.get('https://support.google.com/legal/contact/lr_counternotice?product=websearch')
    # Sınıfı seçmek için bekleyin
    time.sleep(1) # 1 saniye bekle
    select_div = driver.find_element_by_class_name('sc-select')
    select_div.click()
    # Seçeneği seçmek için bekleyin
    time.sleep(1) # 1 saniye bekle
    class_element = driver.find_element_by_xpath("//li[@id=':221']")
    class_element.click()
    # İsim alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('full_name')
    with open('random.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Unvan alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('your_title')
    with open('unvan.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Sirket alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('companyname')
    with open('sirket.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Mail alanına bir isim girin
    email_element = driver.find_element_by_id('contact_email_noprefill')
    email_element.send_keys('asd@asd.com')
    # Adres alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('address')
    with open('address.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    # Telefon alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('phone')
    with open('phone.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(2) # 2 saniye bekle
    # Url'leri okuyun ve yazın
    with open('url.txt', 'r') as url_file:
        urls = url_file.readlines()
        url_index = 0
    for i in range(2):
        add_additional = driver.find_element_by_class_name('add-additional')
        add_additional.click()
        time.sleep(1) # 1 saniye bekle
        
        # Sonraki input alanını bulun
        next_input = driver.find_element_by_id('material_location')
        
        # Url'yi yazın ve sonuna +++ işaretini ekleyin
        next_input.send_keys(urls[url_index].strip() + ' +++')
        url_index += 1
    target_element = driver.find_element_by_id("dmca_clarifications_intro--counternotice.clarify_owner")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    # Ayrıntı alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('dmca_clarifications')
    with open('sebep.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(2) # 2 saniye bekle
    target_element = driver.find_element_by_id("consent_statement1--dmca_consent_statement")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    target_element = driver.find_element_by_id("consent_statement2--dmca_consent_statementtwo")
    driver.execute_script("arguments[0].click();", target_element)
    time.sleep(1) # 1 saniye bekle
    # İmza alanına rasgele bir isim girin
    name_element = driver.find_element_by_id('signature')
    with open('random.txt', encoding='utf-8') as f:
        names = f.read().splitlines()
    random_name = random.choice(names)
    name_element.send_keys(random_name)
    time.sleep(1) # 1 saniye bekle
    # Tarayıcıyı kapatın
    # driver.quit()

    Tam olarak nerede sorun yaşadığınızı anlayamadım açıklarsanız yardımcı olabilirim veya github'a upload ederseniz projenizi daha iyi değerlendirebiliriz.
  • 02-04-2023, 19:02:28
    #3
    inputtaki veriye +++ giren kısım bu: next_input.send_keys(urls[url_index].strip() + ' +++')

    Bu kısmı next_input.send_keys(urls[url_index].strip()) olarak değiştir. txt içindeki verilerin hepsini random kullanıyorsun. adresler, isimler, şirketler vs. with open ile a+ olarak url.txt aç ve replace methodu ile veriyi değiştir. Yapamassan veya başka özelliklere ihtiyacın varsa, ücretli olarak yardımcı olabilirim.
  • 02-04-2023, 19:52:16
    #4
    fuatboluk adlı üyeden alıntı: mesajı görüntüle
    inputtaki veriye +++ giren kısım bu: next_input.send_keys(urls[url_index].strip() + ' +++')

    Bu kısmı next_input.send_keys(urls[url_index].strip()) olarak değiştir. txt içindeki verilerin hepsini random kullanıyorsun. adresler, isimler, şirketler vs. with open ile a+ olarak url.txt aç ve replace methodu ile veriyi değiştir. Yapamassan veya başka özelliklere ihtiyacın varsa, ücretli olarak yardımcı olabilirim.
    pm atıyorum
  • 02-04-2023, 20:07:52
    #5
    MainMagnet adlı üyeden alıntı: mesajı görüntüle
    Tam olarak nerede sorun yaşadığınızı anlayamadım açıklarsanız yardımcı olabilirim veya github'a upload ederseniz projenizi daha iyi değerlendirebiliriz.
    github üyeliğim yok ama konu açıklamasını daha düzgün yazdım şimdi. Konudaki kodu py ile açarsanız ( chromedriver ve belirtilen adlarda .txt verileri aynı klasörde olmalı txt içlerinde bir şey yok sadece alt alta satırlarda asd asd vb. gibi test verileri var ) bir adres açıcak ve konu başında yazdığım işlemleri yapacak öyle daha net anlaşılacaktır
  • 07-04-2023, 00:24:03
    #6
    Arayış devam ediyorsa pm alabilir miyim?