Я пытаюсь вставить значения в таблицу, созданную , но когда я это делаю, она дает мне ошибку, указав неопределенную переменную , но я объявила ее в основной функции, и значения были назначены к этим переменнымНеопределенная переменная при чтении значений в таблице
Вот мой код. ! #/USR/бен/python3
import requests
import sqlite3
def get_info(url):
response = requests.get(url)
page = response.json()
name = page['name']
category = page['category']
link = page['link']
location = page['location']['city']
likes = page['likes']
checkins = page['checkins']
return name,category,link,location,likes,checkins
def main():
link = 'https://graph.facebook.com/Indiatoday'
p_name,p_cat,p_link,p_loc,p_likes,p_check = get_info(link)
print ('the page details are '+p_name,p_cat,p_link,p_loc,p_likes,p_check)
db = sqlite3.connect('page.db')
db.execute('''CREATE TABLE IF NOT EXISTS page_info (
id INTEGER PRIMARY KEY,
name TEXT,
category TEXT,
link TEXT,
location TEXT,
likes INTEGER,
checking INTEGER)''')
print ('table created successfully')
db.execute('''INSERT INTO page_info (name, category, link, location, likes,Checking) VALUES(?,?,?,?,?,?)''',(p_name,p_cat,p_link,p_loc,p_likes,p_check))
db.commit()
if __name__ == "__main__": main()
Am получаю сообщение об ошибке «NameError: имя„p_name“не определен» было бы полезно, если бы кто-нибудь мог бы дайте мне знать, что я здесь делаю неправильно , Я знаю его простой переменной, определяющей, но я не смог найти его
Это сработало! Но при вставке значений он дает мне сообщение об ошибке как «sqlite3.OperationalError: table page_info не имеет столбца с именем name». Что-то не так с командой вставки? –
Не знаю. Кажется, стол должен иметь эту колонку. Я еще не работал с sqlite3, поэтому я не могу сказать правду. –