Python Scrape 数据覆盖自身

Pyhton Scraped data overwrite itself

我正在尝试将此代码中的信息传输到 excel sheet,但它仅传输最新数据,据我了解,它会覆盖信息。

你认为我应该如何克服这个问题?你有什么建议?

from bs4 import BeautifulSoup
import requests
import pandas as pd

source = requests.get('url').text
soup = BeautifulSoup(source, 'lxml')
jobs = soup.find_all('div', class_='prd')

for job in jobs:
    product_name = job.find('a', class_='prd-link')['title']
    product_id = job.find('button', class_='prd-favorite btn-add-favorites')['data-product-id']
    product_url = job.find('a', class_='prd-link')['href']
    product_price = job.find('span', class_='prc prc-last').text

df =pd.DataFrame({
    'Col A': [product_name],
    'Col B': [product_id],
    'Col C': [product_url],
    'Col D': [product_price],
})
df.to_excel('test.xlsx')

将您的数据存储在 dictslist 中,并根据这些创建您的 DataFrame

...
data = []

for job in jobs:
    data.append({
        'product_name' : job.find('a', class_='prd-link')['title'],
        'product_id' : job.find('button', class_='prd-favorite btn-add-favorites')['data-product-id'],
        'product_url' : job.find('a', class_='prd-link')['href'],
        'product_price' : job.find('span', class_='prc prc-last').text,
    })

pd.DataFrame(data).to_excel('test.xlsx')

...