mysql.connector.errors.ProgrammingError: 1064 (42000) ошибка при добавлении в бд

229
01 мая 2018, 02:03

Есть код:

member_request_params = (
                ('access_token', access_token),
                ('owner_id', -group_id),
                ('offset', offset),
                ('count', 100),
                ('v', 5.74))
            r = requests.get('https://api.vk.com/method/wall.get', params=member_request_params).json()
            post_list = r['response']['items']
            i = 0
            while True:
                if i < 100:
                    post_id = post_list[i]['id']
                    owner_id = post_list[i]['owner_id']
                    post_date = post_list[i]['date']
                    marked_as_ads = post_list[i]['marked_as_ads']
                    post_type = post_list[i]['post_type']
                    text = post_list[i]['text']
                    post_comments = post_list[i]['comments']['count']
                    post_likes = post_list[i]['likes']['count']
                    post_reposts = post_list[i]['reposts']['count']
                    post_views = post_list[i]['views']['count']
                    print('\n',
                          'post_id:', post_id, '\n',
                          'owner_id:', owner_id, '\n',
                          'post_date:', post_date, '\n',
                          'marked_as_ads:', marked_as_ads, '\n',
                          'post_type:', post_type, '\n',
                          'text:', text, '\n\n',
                          'comments:', post_comments, '\n',
                          'likes:', post_likes, '\n',
                          'reposts:', post_reposts, '\n',
                          'views:', post_views, '\n',
                                100 - i, '\n')
                    cursor.execute(
                        "INSERT IGNORE INTO VK_posts_2 ("
                        "post_id, owner_id, group_id, post_date, marked_as_ads, post_type, text, "
                        "reposts, comments, likes, views) "
                        "VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s'" % (
                            post_id, owner_id, group_id, post_date, marked_as_ads, post_type, text,
                            post_reposts, post_comments, post_likes, post_views
                        ))
                    i += 1

Есть стек с ошибкой:

post_id: 899 
owner_id: -137348293 
post_date: 1520918104 
marked_as_ads: 0 
post_type: post 
text: Глава компании SpaceX Илон Маск, а также его друг Джонатан Нолан (сценарист фильма «Интерстеллар» и режиссёр сериала «Мир Дикого Запада») презентовали новое видео запуска Falcon Heavy с автомобилем Tesla на борту 
comments: 0 
likes: 0 
reposts: 0 
views: 365 
100 
        Traceback (most recent call last):
          File "D:/perforce/Social/VK_stats_get.py", line 48, in <module>
            vk_post_processing.vk_post_processing(gid)
          File "D:\perforce\Social\vk_post_processing.py", line 61, in vk_post_processing
            post_reposts, post_comments, post_likes, post_views
          File "D:\Minicanoda3\lib\site-packages\mysql\connector\cursor.py", line 515, in execute
            self._handle_result(self._connection.cmd_query(stmt))
          File "D:\Minicanoda3\lib\site-packages\mysql\connector\connection.py", line 488, in cmd_query
            result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))
          File "D:\Minicanoda3\lib\site-packages\mysql\connector\connection.py", line 395, in _handle_result
            raise errors.get_exception(packet)
        mysql.connector.errors.ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
        Process finished with exit code 1
READ ALSO
MySQL: Offset и Limit как правильно составить запрос

MySQL: Offset и Limit как правильно составить запрос

Допустим есть таблица users в которой 40 записей

240
Что делает этот запрос MySQL

Что делает этот запрос MySQL

есть такие запросыЕсли первый,второй,третий я понял, то что делает четвертый? И можно ли его переписать без использования временной таблицы

210
Сортировка комментариев по лайкам

Сортировка комментариев по лайкам

Помогите, пожалуйста, подправить запрос, нужно отсортировать комментарии по лайкам и дизлайкам (то бишь по сумме лайков и дизлайков: cnt_total...

196
Переезд с Mysql на Mysqli

Переезд с Mysql на Mysqli

решил переехать на Mysqli с MysqlПеречитав несколько статей я понял что сделать это не так уж и трудно

328