Data reset on Selenium tab change

Viewed 85

While trying to use the data I get from one tab in the other tab with selenium, it resets the data when the tab changes, so I can't use the data. How can I prevent this?

My Code :

for link in linkler:
driver.get(link)
oyunAdi = driver.find_element_by_xpath("//h1[@itemprop='name']").text
oyunFiyat = driver.find_element_by_xpath("//*[@class='table-prices-current']//td[3]").text
try:
    community = driver.find_element_by_xpath("//a[@id='tab-communityitems']").click()
    sleep(1)
    isimler = driver.find_elements_by_xpath("//div[@id='item-class-2']//div//div[@class='community-item']")
    devam = "a"
except:
    devam = "b"
    driver.switch_to.window(driver.window_handles[0])
    a = 0
if devam == "a":
    for isim in isimler:
        driver.switch_to.window(driver.window_handles[1])
        sleep(0.5)
        arama = driver.find_element_by_xpath("//input[@id='findItemsSearchBox']")
        arama.clear()
        arama.send_keys(oyunAdi, isim.text)
        sleep(3)
        esyaIsimler = driver.find_elements_by_xpath("//*[@class='market_listing_item_name']")
        fiyatlar = driver.find_elements_by_xpath("//*[@class='normal_price']")
        for x in range(0,len(esyaIsimler)):
            if esyaIsimler[x].text == isim:
                print(oyunAdi, oyunFiyat, esyaIsimler[x].text, fiyatlar[x].text)
    driver.switch_to.window(driver.window_handles[0])

For example, the output of the code below is 10.

isimler = driver.find_elements_by_xpath("//div[@id='item-class-2']//div//div[@class='community-item']")
print(len(isimler))

but this code gives error

driver.switch_to.window(driver.window_handles[1])
print(len(isimler))

I want to use the data of the isimler variable that I got from the previous tab in the new tab.

1 Answers
Related