Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-按错误顺序排列的行_Python_Pandas_Selenium_Rows - Fatal编程技术网

Python-按错误顺序排列的行

Python-按错误顺序排列的行,python,pandas,selenium,rows,Python,Pandas,Selenium,Rows,我对熊猫有意见。我在一个网站上搜刮硒元素,试图抓住所有的标题和产品的价格。问题是,只有一些产品有“3美元2”这样的活动,当尝试将这些价值纳入熊猫时,它只返回活动中的“标题”和“价格”,并跳过没有活动的项目。 当我这样做时: df1['Promo']=pd.系列(促销清单) 然后我将页面上的所有项目和价格都添加到,但“促销”列与实际开展活动的产品不匹配。你知道怎么解决这个问题吗 def site(): browser = webdriver.Chrome(webdriver_path, optio

我对熊猫有意见。我在一个网站上搜刮硒元素,试图抓住所有的标题和产品的价格。问题是,只有一些产品有“3美元2”这样的活动,当尝试将这些价值纳入熊猫时,它只返回活动中的“标题”和“价格”,并跳过没有活动的项目。 当我这样做时: df1['Promo']=pd.系列(促销清单) 然后我将页面上的所有项目和价格都添加到,但“促销”列与实际开展活动的产品不匹配。你知道怎么解决这个问题吗

def site():
browser = webdriver.Chrome(webdriver_path, options=options)
coop_url = 'https:-------'
browser.get(coop_url)
time.sleep(3)
search_bar = browser.find_element_by_name('text')
search_bar.send_keys(search)
search_bar.send_keys(Keys.RETURN)
try:
    while True:
        time.sleep(3)
        promotions = browser.find_elements_by_class_name("m-product-price.is-splash")
        item_titles_description = browser.find_elements_by_class_name("product-summary")
        item_titles = browser.find_elements_by_class_name("a-heading-3.product-name")
        item_prices = browser.find_elements_by_class_name("product-price")
        titles_list = []
        prices_list = []
        prices_list2 = []
        titles_description_list = []
        promotions_list = []
        for title in item_titles:
            titles_list.append(title.text)
        for promo in promotions:
            promotions_list.append(promo.text)
        for description in item_titles_description:
            titles_description_list.append(description.text)
        for prices in item_prices:
            prices_list.append(prices.text)
        next_page = browser.find_element_by_class_name("a-link.is-light.coop-icon.coop-chevron-right.page-next.js-page-next.js-page-arrow")
        next_page.click()
except ElementNotInteractableException:
    browser.quit()
print(promotions_list)

for i in prices_list:
    if ':-' in i:
        prices_list2.append(i.replace(":- /st", ''))
    else:
        prices_list2.append(i)

titles_range = range(len(titles_list))
print(titles_range)
    
        

df1 = pd.DataFrame(zip(titles_list, titles_description_list, prices_list2), columns = ['ItemName', 'Description', 'Price'])
# df1['Platform'] = 'Coop'
df1['Promo'] = pd.Series(promotions_list)
df1['Price'] = df1['Price'].str.replace(' /st', '')
df1['Price'] = df1['Price'].str.replace(':', '.').astype(float)

df2 = df1.sort_values('Price', ascending = True)
df2.to_csv(f'coop {date_stamp}.csv')

我发现很难理解那里发生了什么。您是否可以添加一个数据帧示例,以更加图形化的方式指出问题所在?另外,最小化代码,只显示有问题的部分。