2017-02-08 20 views
0

Получил мой первый контролер цен, который контролирует 50 продуктов и извлекает данные, это работает в 3 часа каждый день. В настоящий момент проверенные продукты добавляются к существующим данным, которые, очевидно, производят дубликаты, поэтому в течение нескольких дней я получаю 50, 100, 150 строк ...Красивые супы и GSpread, добавляющие данные в лист Google, вместо замены

Как я могу получить скрипт Python для замены или очистить существующие данные, поэтому в таблице будет только 50 продуктов?

Здесь верхняя часть кода:

from selenium import webdriver 
import time 
from bs4 import BeautifulSoup 


import json 
import gspread 
#from oauth2client.client import SignedJwtAssertionCredentials 
from oauth2client.client import SignedJwtAssertionCredentials 
from json import load 
import urllib2 

browser = webdriver.PhantomJS() 

product_details = [] 



def connect_to_spreadsheet(): 
    json_key = json.load(open('0b6bb6f4e5.json')) 
    scope = ['https://spreadsheets.google.com/feeds'] 
    credentials = SignedJwtAssertionCredentials(json_key['client_email'], json_key['private_key'].encode(), scope) 
    #credentials = AssertionCredentials(json_key['client_email'], json_key['private_key'].encode(), scope) 
    gc = gspread.authorize(credentials) 
    wks = gc.open("TestSheet") 

    worksheet = wks.worksheet('automated') 
    last_row = worksheet.row_count 
    last_col = worksheet.col_count - 1 

    for each_row_data in product_details: 
     try: 
      worksheet.append_row(each_row_data) 
     except: 
      print "Could not add row data", each_row_data 
+0

Найден ясный() в документах Gspread, но не уверен, как реализовать в приведенном выше коде https://gspread.readthedocs.io/en/latest/#gspread. Рабочий лист.clear – me9867

+0

и некоторые clear() в этом https://github.com/burnash/gspread/blob/master/tests/test.py – me9867

ответ

0

Прозрачный() очищает лист, но контент начинается после того, где он был очищен

worksheet = wks.worksheet('automated') 
worksheet.clear() 

Но очевидно, является функция() требуется, просто нужны данные для запуска в A2