Форум программистов, компьютерный форум, киберфорум
Python: Web
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/76: Рейтинг темы: голосов - 76, средняя оценка - 4.74
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16

Анализ информации из социальных сетей

21.07.2018, 11:33. Показов 16792. Ответов 187
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно собирать и анализировать информацию из социальных сетей

на python делать?
с чего нужно начинать?
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.07.2018, 11:33
Ответы с готовыми решениями:

Как сделать телеграм бота пересылающий посты и новости из RSS лент и социальных сетей (агрегатор)
Я пытался как всегда разбить план на мелкие составляющие, я начал думать что конкретно и как бот должен будет уметь делать, но даже во...

Блокировка социальных сетей
Возможно подобная тема уже есть, но как-то не нашел.... И всё же дело вот в чем, блокировать соцсети это понятно как, антивирус там,...

Кнопки социальных сетей
Скачал бесплатный шаблон в Вордпресс,в демо версии установлены кнопки социальных сетей в шапке сайта(фото№1).В админпанели есть социальные...

187
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
21.09.2018, 12:26  [ТС]
Студворк — интернет-сервис помощи студентам
* * *

вот, получилось


https://github.com/IRIP/postov =)


* * *

Понял, в чем была ошибка.

в main.py

name_db = 'bases.name_db'

если убрать кавычки, и ссылаться на postov/configs/bases.py
то не получается

Добавлено через 10 минут
* * *

Идем дальше, вроде все работает =)

Добавлено через 13 минут
Вконтакте блокирует, если в сутки, превышаешь 5000 запросов, следовательно, нужно вводить ограничение.

Мы так и не определились с объемом единоразового вливания. Например, в одной из групп

Количество постов: 1291
Вы хотите сохранить введенные данные? Да(y)/Нет(n): =)

как-то с объемом нужно определиться =)

Добавлено через 1 час 4 минуты
Изменил

добавил немного pass функций, залил на git

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
import vk_api
from configs import passwords
 
 
 
class vk_parser:
    def __init__(self):
        login, password = passwords.login, passwords.password
        self.vk_session = vk_api.VkApi(login, password)
 
        try:
            self.vk_session.auth(token_only=True)
        except vk_api.AuthError as error_msg:
            print(error_msg)
 
    def get_info(self, id):
        """
        Получает полную информацию из поста. Ссылки на фото, текст и т.п.
        :param id:
        :return:
        """
        tools = vk_api.VkTools(self.vk_session)
        wall = tools.get_all('wall.get', 10, {'owner_id': id})
        return wall['items']
 
    def get_photo_author(self, photo_author):
        """
        Получает фото автора поста/группы
        :param photo_author:
        :return:
        """
        pass
 
    def get_title(self, title):
        """
        Генерируем заголовок из массива
        :param title:
        :return:
        """
        pass
 
    def get_excerpt(self, excerpt):
        """
        Отрывок для descriptions (краткое описание)
        :param excerpt:
        :return:
        """
        pass
 
    def get_date_post(self, date_post):
        """
        Штамп даты и времени поста
        :param date_post:
        :return:
        """
        pass
 
    def get_source_url(self, source_url):
        """
        Штамп урл.ссылки (источника)
        :param source_url:
        :return:
        """
        pass
 
    def get_source_author(self, source_author):
        """
        Ссылка на группу/человека (без детализации до поста)
        :param source_author:
        :return:
        """
        pass
 
    def get_pictures(self, pictures):
        """
        Все фотографии поста (их нужно загрузить в папку upload/id_source/img проекта)
        :param pictures:
        :return:
        """
        pass
 
    def get_music(self, music):
        """
        Все аудио поста (их нужно загрузить в папку upload/id_source/msc проекта)
        :param music:
        :return:
        """
        pass
 
    def get_videos(self, videos):
        """
        Все видео поста (их нужно загрузить в папку upload/id_source/videos проекта)
        :param videos:
        :return:
        """
        pass
 
    def get_files(self, files):
        """
        Все файлы поста (их нужно загрузить в папку upload/id_source/files проекта)
        :param files:
        :return:
        """
        pass
Добавлено через 54 минуты
* * *

Есть еще одна ошибка

Не удалось создать таблицу vkdata - поскольку она уже есть, и данные в ней есть

и


Traceback (most recent call last):
File "/home/irip/pycharm/getpost/main.py", line 72, in <module>
posts[i]['text']) for i in range(len(posts)
File "/home/irip/pycharm/getpost/main.py", line 72, in <listcomp>
posts[i]['text']) for i in range(len(posts)
KeyError: 'source_id'

но это связано с тем, что я начинаю добавлять новые поля (получится ли?)
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
21.09.2018, 13:13
Цитата Сообщение от IRIP Посмотреть сообщение
Не удалось создать таблицу vkdata - поскольку она уже есть, и данные в ней есть
Надо сделать просто

Python
1
2
3
4
5
try:
            self.c.execute(
                '''CREATE TABLE vkdata ( id integer, data integer, txt text)''')
        except:
           pass
Мы не проверяем, нет таблицы создаем, есть перехватываем исключение и идем дальше
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
21.09.2018, 13:18  [ТС]
ТабуретY, спасибо. Попробую.


Дальше, для vk нужно создать определенный набор полей в таблице (который будет включать, в том числе, id группы)

https://github.com/IRIP/postov... vk_core.py здесь я начал это делать, правильно ли?

и как вообще это реализуется? Стараюсь понять
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
21.09.2018, 13:53
Цитата Сообщение от IRIP Посмотреть сообщение
набор полей в таблице
Набор полей в таблице задается в момент создания, вот этой строкой

Python
1
2
 self.c.execute(
                '''CREATE TABLE vkdata ( id integer, data integer, txt text)''')
Добавлено через 5 минут
и в файле maim.py, строки 67-70 можно сделать так

Python
1
2
3
4
 data = [(
                        post['id'], post['source_id'], post['date'],
                        post['text']) for post in posts)
                        )]
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
22.09.2018, 00:07
Цитата Сообщение от IRIP Посмотреть сообщение
Не удалось создать таблицу vkdata - поскольку она уже есть
SQL
1
CREATE TABLE IF NOT EXISTS vkdata ( id INTEGER, DATA INTEGER, txt TEXT)
1
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
22.09.2018, 09:26
Итоговый вариант

Python
1
2
3
4
 def __init__(self, name_db):
        self.conn = sqlite3.connect(name_db)
        self.c = self.conn.cursor()
        self.c.execute('''CREATE TABLE  IF NOT EXISTS vkdata ( id integer, source_id integer, data integer, txt text)''')
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
24.09.2018, 11:26  [ТС]
ТабуретY,

вот в этом кусочке код sql взят в ''' ''' - он закомментирован?

Python
1
2
3
4
5
        self.c.execute(
             '''
             CREATE TABLE  IF NOT EXISTS vkdata ( id integer, source_id integer, data integer, txt text)
             '''
        )

и еще, есть какие-нибудь стандартные наборы, которые собираются с поста?

текст, дата, автор, видео, фото, файл, опрос и т.п.


я здесь, вроде расписал все, но может быть это уже не нужно так расписыватЬ? Может это встроено в готовые модули?

https://github.com/IRIP/postov... vk_core.py

Добавлено через 20 минут
Вот этого набора, хватит? Или что-то забыл?


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
            self.c.execute(
                '''
                CREATE TABLE vkdata( 
                id integer,  # id источника
                author_photo,  # аватар автора поста
                title,  # заголовок (генерируется)
                descriptions,  # описание (генерируется)
                date_post,  # дата написания поста
                source_url,  # ссылка на пост на источнике
                source_author,  # ссылка на автора поста
                data integer,  # весь текст целиком
                pictures,   # фото (ссылки (прямые на файлы))
                music,   # аудио
                hash_tags,  # теги 
                quests,  # опрос
                videos,  # ссылки на видео
                links,  # прикрепленные в текст ссылки 
                files,  # прикрепленные файлы
                txt text  # чистый текст поста (со сссылками внутри и т.п.))
                '''
            )
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
24.09.2018, 14:00
Цитата Сообщение от IRIP Посмотреть сообщение
вот в этом кусочке код sql взят в ''' ''' - он закомментирован?
Это такой вид строк в python

Тут вот примеры к vk_api https://github.com/python273/v... r/examples
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
24.09.2018, 18:37  [ТС]
ТабуретY, да, спасибо!

действительно, интересно. 2500 постов обработал за считанные минуты, нашел нужную информацию но есть проблемы...

Первое, и самое важное, не берет фото, видео, аудио, ссылки, музыку, опросы, файлы с поста. В базу попадают чистые тексты

Добавлено через 16 минут
Второе, замечено, что в базу влетают сразу по 4-5 одинаковых (имеющих одинаковый id) постов
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
24.09.2018, 20:33
Цитата Сообщение от IRIP Посмотреть сообщение
берет фото, видео, аудио, ссылки, музыку, опросы, файлы с поста
Надо проверить что отсылает vk на запрос

Цитата Сообщение от IRIP Посмотреть сообщение
Второе, замечено, что в базу влетают сразу по 4-5 одинаковых (имеющих одинаковый id) постов
Там проверки нет на уникальность
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
24.09.2018, 21:04  [ТС]
ТабуретY, в приведенных примерах нет вариантов решения задачи

я все-таки склоняюсь к тому, что полученный пост,
не нужно сразу записывать в базу. Его нужно сначала обрабатывать.

мне удалось получить доступ к отдельной странице
теперь с нее нужно собирать данные и сохранять в отдельную папку

как брать группа_post я понял, и как зайти и проанализировать страницу, тоже представление есть.

Осталось, технически это реализовать.

Добавлено через 2 минуты
Цитата Сообщение от ТабуретY Посмотреть сообщение
Там проверки нет на уникальность
если нет, тогда ДО записи в базу данных, нужно циклом, каждый data обрабатывать

и запоминать, и исключать дубли (в будущем, но, до этого дойдем позже
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
24.09.2018, 21:17
Цитата Сообщение от IRIP Посмотреть сообщение
влетают сразу по 4-5 одинаковых (имеющих одинаковый id) постов
Используйте суррогатный автоинкрементный
SQL
1
id INTEGER PRIMARY KEY AUTOINCREMENT  NOT NULL
, либо маркируйте свой id как
SQL
1
id INTEGER UNIQUE NOT NULL
при создании... в этом случае проверка на уникальность вставленного ключа id ложится на вас. База будет просто кидать exception при попытке вставить дубликат по этому значению.
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
24.09.2018, 22:39  [ТС]
Garry Galler, вот так получилось записать в базу один раз

Python
1
2
3
4
5
6
7
8
9
10
11
12
    def __init__(self, name_db):
        self.conn = sqlite3.connect(name_db)
        self.c = self.conn.cursor()
        self.c.execute(
                '''
                CREATE TABLE IF NOT EXISTS vkdata( 
                    id integer,
                    data integer,
                    txt text,
                    CONSTRAINT name_unique UNIQUE (id))
                '''
            )
но потом, при повторной попытке, ошибка

Traceback (most recent call last):
File "/home/irip/pycharm/getpost/main.py", line 79, in <module>
bases.save(data)
File "/home/irip/pycharm/getpost/bases/sqlite_core.py", line 22, in save
self.c.executemany("INSERT INTO vkdata VALUES (?,?,?)", data)
sqlite3.IntegrityError: UNIQUE constraint failed: vkdata.id
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
24.09.2018, 22:50
Цитата Сообщение от IRIP Посмотреть сообщение
при повторной попытке, ошибка
Это логично. Если ключ объявлен как уникальный (это можно было сделать и без директивы CONSTRAINT ), его нельзя использовать дважды.
Вы должны использовать либо суррогатный ключ объявленный как PRIMARY_KEY AUTOINCREMENT (который база будет создавать и инкрементировать сама - вы даже не должны думать о нем и пытаться вставить), либо не вставлять дубликаты для своего уникального ключа. Третьего не дано.
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
24.09.2018, 22:58  [ТС]
Garry Galler, вся соль в том, что мне как раз нужен этот ключ уникальным, поскольку он и не ключ вовсе
а по сути post-id

который для каждого уникального источника - должен быть уникальным =)

блин...

Добавлено через 1 минуту
запушил https://github.com/IRIP/postov
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
25.09.2018, 00:11
Цитата Сообщение от Garry Galler Посмотреть сообщение
Третьего не дано
Ок. Я совсем забыл (думая, что в sqlite это не работает):
SQL
1
INSERT OR IGNORE INTO table_test(id,loaded) VALUES (12,404);
Синтаксис означаете: вставить строку, если нет совпадений по уникальному ключу, иначе ничего не делать.
В MySQL такая же конструкция, только без OR.

P.S. В MySQL есть еще директива ON DUPLICATE KEY UPDATE, которая позволяет либо делать вставку, либо обновление, если ключ уже есть.

Добавлено через 22 минуты
Update. В SQLite похожим образом (вставить, либо заменить) должна работать такая конструкция:
SQL
1
2
INSERT OR REPLACE INTO TABLE(column_list)
VALUES(value_list)
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
25.09.2018, 00:15  [ТС]
* * *

По идее, я понимаю, примерно, как работает эта программа
Она берет "объем" данных и ...

Python
1
2
         wall = tools.get_all('wall.get', 10, {'owner_id': id})
         return wall['items']
я учусь по видео курсам, книгам
но в коде я не вижу нигде больше этот items

где он хранится (В памяти?)

почему мы сразу сохраняем

Python
1
2
3
4
5
6
7
8
9
10
            if to_dos == 1:
                bases = sqlite_base(name_db)
                data = [
                        (
                            posts[i]['id'],
                            posts[i]['date'],
                            posts[i]['text']) for i in range(len(posts)
                        )
                        ]
                bases.save(data)
через save из файла https://github.com/IRIP/postov... te_core.py

и где, самое важное, нужно смотреть, чтобы внести изменения - не сохранять, если таблица (и данные) уже есть...

Добавлено через 1 минуту
* * *

Цитата Сообщение от Garry Galler Посмотреть сообщение
Синтаксис означаете: вставить строку, если нет совпадений по уникальному ключу, иначе ничего не делать
Получается, https://github.com/IRIP/postov... te_core.py тут...?

Python
1
2
3
4
5
6
    def save(self, data):
        self.c.executemany("INSERT INTO vkdata VALUES (?,?,?)", data)
        # Сохранение (commit) изменений
        self.conn.commit()
        # Закрытие курсора, в случае если он больше не нужен
        self.conn.close()
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
25.09.2018, 00:23
Цитата Сообщение от IRIP Посмотреть сообщение
но в коде я не вижу нигде больше этот items
items это ключ из JSON, который возвращает API VK. По этому ключу извлекается полезная нагрузка и больше он не нужен.
Вы попробуйте попользоваться API в чистом виде, чтобы понять что сайт вообще возвращает.

Пример не совсем стандартного VK API, но сути не меняет.
Python
1
2
3
4
5
6
7
def execute():
    url = "https://api.vk.com/method/execute?"
    code = 'return [API.users.search({"q":"Вася Пупкин"})];'
    data = dict(code=code, access_token=access_token, v='5.73')
    execute = requests.post(url=url, data=data)
    answer = json.loads(execute.text)
    pprint(answer)
Что вернулось:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
'''
    {'response': [{'count': 73172,
               'items': [{'first_name': 'Вася',
                          'id': 150534158,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 56801369,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 193050586,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 138580389,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 1133,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 193175504,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 122366868,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 12701711,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 43772,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 201663605,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася-Алексндер',
                          'id': 228182,
                          'last_name': 'Пупкин-Шевченко'},
                         {'first_name': 'Вася',
                          'id': 243377656,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 187621595,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 322545108,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 262780773,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 218968562,
                          'last_name': 'Пупкин'},
                         {'first_name': 'Вася',
                          'id': 164954679,
                          'last_name': 'Пупкин'}]}]}
'''

Добавлено через 15 секунд
Цитата Сообщение от IRIP Посмотреть сообщение
тут...?
Да.
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
25.09.2018, 01:00  [ТС]
Цитата Сообщение от Garry Galler Посмотреть сообщение
Вы попробуйте попользоваться API в чистом виде
я понял, значит vk_api создает (где, физически? Не важно?) файл json который потом и обрабатывает программа

в нашем случае, https://github.com/IRIP/postov/blob/master/main.py тут

мы сначала

Python
1
2
            vk = vk_core.vk_parser()
            posts = vk.get_info(int(id))  # получаем список постов
а затем,

сразу их сохраняем, без проверки


Python
1
2
3
4
5
6
7
8
9
10
            if to_dos == 1:
                bases = sqlite_base(name_db)
                data = [
                        (
                            posts[i]['id'],
                            posts[i]['date'],
                            posts[i]['text']) for i in range(len(posts)
                        )
                        ]
                bases.save(data)
мне сложно представить, что они все лежат, где-то там, в "оперативной памяти", но сейчас не про это.

Здесь, похоже нужно пробегаться по posts и обрабатывать дополнительно как-то "список"
на предмет,

если в базе есть
то ...

или я ошибаюсь?

Добавлено через 12 минут
Вот, я понял, что если я хочу увидеть список posts то должен print сделать


JSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/home/irip/pycharm/getpost/venv/bin/python /home/irip/pycharm/getpost/main.py
Привет! Давай поработаем!
1. Импорт источников
2. Экспорт источников
3. Вывести список источников
4. Запустить кросс-постинг.
 
 Выбери цифру нужного варианта (0 - выход: 1
Выбран вариант № 1 
 
Введите id VK (впереди минус, если группа): 
-108964054
[{'id': 26, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1498774651, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Гибкий телефон Samsung Galaxy Skin\n\nИногда, от услышанного уши сворачиваются трубочкой. Бывает, в трубочку можно свернуть ноутбук. А дизайнер Хейон Ю (Heyon You) создал концепт мобильного телефона Samsung Galaxy Skin, который также можно будет свернуть в трубочку, да и вообще гнуть его по-всякому, как душе угодно! \nОбычно дизайнеры-одиночки, создавая концепт нового мобильного телефона, просто вешают на него для красоты логотип какого-нибудь крупного производителя мобильной техники. А вот в случае с Хейоном Ю и его телефоном Samsung Galaxy Skin все произошло совсем по-другому! Компания Samsung сама заказала ему дизайн потенциального мобильного телефона Samsung Galaxy, если бы он был гибким. И Ю справился с поставленной перед ним задачей на твердую пятерку! Теперь посмотрим, как справится с его идеями Samsung. \nПо задумке Хейона Ю, реализованной им в концепте мобильного телефона Samsung Galaxy Skin, гибкость не даст аппарату никаких особенных новых технических функциональных возможностей. Зато она сделает его куда более удобным и практичным. \nЕсли раньше у всякого телефона был свой форм-фактор (моноблок, слайдер, раскладушка, ротатор, браслет и т.д.), то Samsung Galaxy Skin, благодаря своей гибкости, сможет иметь практический любой из этих типов корпуса. Более того, с каждым из них будет ассоциироваться та или иная функция этого мобильного телефона. \nК примеру, если просто сложить Samsung Galaxy Skin вдовое, то это будет обычный мобильный телефон, если сложить его вдвое и чуть раздвинуть кончики, то так будет очень хорошо проводить видеосвязь. Повернув аппарат набок и чуть согнув его бока, вы получите аудио-видеосистему, повернув набок и чуть согнув посередине – настольный будильник. Выставив один из кончиков телефона на высоте параллельно основанию, вы сделаете мультимедийный проектор.', 'attachments': [{'type': 'photo', 'photo': {'id': 456239019, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa1/tlcoU7PmHiI.jpg', 'width': 130, 'height': 90}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa3/-wSy1pOqGVA.jpg', 'width': 130, 'height': 90}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa4/9l09BPPZYXI.jpg', 'width': 200, 'height': 138}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa5/psf8ioFUFzg.jpg', 'width': 320, 'height': 221}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa6/uab2gLN0IDA.jpg', 'width': 510, 'height': 353}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa0/YthJBzqvXHI.jpg', 'width': 75, 'height': 52}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa2/aabdwDVPtOg.jpg', 'width': 600, 'height': 415}], 'text': '', 'date': 1498774651, 'access_key': '18880407b36708dfc9'}}, {'type': 'photo', 'photo': {'id': 456239020, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa8/eqLJOab753E.jpg', 'width': 130, 'height': 86}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaaa/ZWSbapSJzuo.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaab/ZU81k4VpQ-g.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaac/GlmnPp5kyv0.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaad/E2awiuJrrHA.jpg', 'width': 510, 'height': 340}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa7/M-8oZPbKOxA.jpg', 'width': 75, 'height': 50}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaa9/r_7_MM1F33Q.jpg', 'width': 600, 'height': 395}], 'text': '', 'date': 1498774651, 'access_key': 'ddcf8fdb54f89e20cb'}}, {'type': 'photo', 'photo': {'id': 456239021, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bdab9/LzHnInaXZhA.jpg', 'width': 130, 'height': 77}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bdabb/hV95fCuE2xI.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bdabc/R92_7smHGgc.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bdabd/szcCJTioarM.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bdabe/5y5ME7k6H3g.jpg', 'width': 510, 'height': 340}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bdab8/9xp-bbtnvkI.jpg', 'width': 75, 'height': 44}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bdaba/IKKf_LYjjT0.jpg', 'width': 600, 'height': 354}], 'text': '', 'date': 1498774651, 'access_key': 'f55869435064239b2e'}}, {'type': 'photo', 'photo': {'id': 456239022, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac0/5jIX22Jbc_w.jpg', 'width': 130, 'height': 88}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac2/mevKXcdY2HQ.jpg', 'width': 130, 'height': 88}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac3/ZWJS9-HgG4k.jpg', 'width': 200, 'height': 135}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac4/YHnJ_C8RSC0.jpg', 'width': 320, 'height': 216}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac5/CtFc5Sb6EmU.jpg', 'width': 510, 'height': 344}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bdabf/yE1zMLIz7EI.jpg', 'width': 75, 'height': 51}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bdac1/2x1AZI2tEkU.jpg', 'width': 600, 'height': 405}], 'text': '', 'date': 1498774651, 'access_key': '414928a3639bab092f'}}], 'post_source': {'type': 'vk'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}, 'views': {'count': 35}}, {'id': 25, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1498774268, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Летающий велосипед от чешских инженеров\n\nГруппа энтузиастов из нескольких чешских компаний создала проект летающего велосипеда с шестью пропеллерами для поднятия его в воздух, и намерена сконструировать свой FBike до объявленных ранее тестовых полётов в августе.\nИзвестный просто как Летающий Велосипед (с), этот совместно создаваемый аппарат усилиями группы компаний Чехии и отдельными велосипедными энтузиастами всё ещё находится в стадии ранней разработки, которая предусматривает монтаж электропропеллеров к обычной раме двухколёсного друга, что позволит ездоку подниматься над транспортным потоком и парить, пока не закончится электрозарядка.\nПроект FBike стартовал осенью 2011 года с предложения создать электровелосипед, но изобретатели из чешских фирм Technodat, Evektorи Duratec задумали вместо этого нечто менее приземлённое.', 'attachments': [{'type': 'photo', 'photo': {'id': 456239017, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bda88/P-afQlSuoI8.jpg', 'width': 130, 'height': 79}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8b/F5VLiDpWE4c.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8c/LJwqjbif4wg.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8d/vtexKqQik5g.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8e/7ozn349Vk3Q.jpg', 'width': 510, 'height': 340}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bda87/9KPZGGAO7zI.jpg', 'width': 75, 'height': 46}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bda89/hbibL_XQW0Y.jpg', 'width': 604, 'height': 368}, {'type': 'y', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8a/DI7z20UF4KY.jpg', 'width': 640, 'height': 390}], 'text': '', 'date': 1498774382, 'access_key': 'b09c0d72c92a0363fd'}}, {'type': 'photo', 'photo': {'id': 456239018, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c837424/v837424161/bda90/iQZoEE2j6mw.jpg', 'width': 130, 'height': 59}, {'type': 'o', 'url': 'https://pp.userapi.com/c837424/v837424161/bda92/4YJE8EE7T6M.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c837424/v837424161/bda93/TumZx8Zj9QQ.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c837424/v837424161/bda94/HoyuhODn01Q.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c837424/v837424161/bda95/V_2DBGoG0ak.jpg', 'width': 476, 'height': 215}, {'type': 's', 'url': 'https://pp.userapi.com/c837424/v837424161/bda8f/oz-DNnQ3KmI.jpg', 'width': 75, 'height': 34}, {'type': 'x', 'url': 'https://pp.userapi.com/c837424/v837424161/bda91/TXLao9eeMYI.jpg', 'width': 476, 'height': 215}], 'text': '', 'date': 1498774382, 'access_key': 'a12a69678c156c319a'}}], 'post_source': {'type': 'vk'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}, 'views': {'count': 31}}, {'id': 24, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1452105288, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Nextbit Robin – Android-смартфон с неограниченным объемом памяти\n\nСтартап Nextbit, основанный выходцами из подразделения по разработке Android, вышел на KickStarter с намерением собрать $500 тыс на выпуск «интеллектуального смартфона» под названием Robin, в котором никогда не заканчивается память.\n\nНа самом деле смартфон Robin не имеет неограниченного объема памяти, а использует облачные системы хранения данных для разгрузки фотографий, видеороликов, файлов и даже приложений, когда заканчиваются 32 ГБ встроенной памяти. Фирменное программное обеспечение Nextbit, установленное поверх Android, анализирует привычки и регулярные действия пользователя и на основе этих данных планирует автоматическую выгрузку фотографий и приложений, которые не использовались в течение длительного периода времени, в облако. Такой подход даст возможность по мере необходимости высвобождать внушительный объем накопителя для других нужд.\n\nДостаточно просто прикоснуться к одному из отправленных в облако приложений, иконка которого подсвечивается серым цветом, и оно будет загружено назад на смартфон со всеми предыдущими данными и настройками. Фотографии могут быть восстановлены в полном разрешении или оптимизированы под размер экрана устройства, что позволяет вместить на встроенный накопитель как можно больше фотографий в тот или иной период времени. Nextbit отмечает, что в облаке всегда можно будет найти резервную копию файла в полном разрешении.\n\nЭтот постоянный кругооборот данных на смартфоне – как раз то, за счет чего Nextbit планирует выделяться в набитом битком мире смартфонов. Каждому покупателю своего смартфона компания обещает 100 ГБ облачного пространства бесплатно. Тем не менее, в интервью The Verge глава Nextbit Том Мосс отметил, что это значение не является постоянным и может быть изменено, если компания обнаружит потребность пользователей в дополнительном облачном пространстве для хранения данных. Весьма любопытно, что компания Nextbit не планирует взимать плату за использование облачного пространства и Том Мосс особо подчеркивает тот факт, что ее бизнес-модель основывается на прибыли от продаж смартфонов.\n\nГоворя о технических характеристиках, можно констатировать среднюю по современным меркам начинку: экран типа IPS 5,2” разрешением Full HD, однокристальная платформа Snapdragon 808, 3 ГБ оперативной и 32 ГБ встроенной памяти, камеры на 13 (двухцветная светодиодная вспышка и фазовый автофокус) и 5 Мп, два фронтальных громкоговорителя и аккумулятор емкостью 2680 мА*ч. Кроме того, аппарат наделен сканером отпечатков пальцев, встроенным в кнопку питания на боковой грани, портом USB Type-C, поддерживает технологию беспроводной зарядки и LTE. Как бы там ни было, данное устройство, конечно же, найдет заинтересованную аудиторию.', 'attachments': [{'type': 'photo', 'photo': {'id': 396399263, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd2/yqL9PuElAp4.jpg', 'width': 130, 'height': 106}, {'type': 'o', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd4/2oCfb1UfWsU.jpg', 'width': 130, 'height': 106}, {'type': 'p', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd5/uz9K0-h4Ecs.jpg', 'width': 200, 'height': 164}, {'type': 'q', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd6/TEEz_vxx-Zc.jpg', 'width': 320, 'height': 262}, {'type': 'r', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd7/1gRTCRiIzRw.jpg', 'width': 510, 'height': 417}, {'type': 's', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd1/Y3JVjgJVR_Y.jpg', 'width': 75, 'height': 61}, {'type': 'x', 'url': 'https://pp.userapi.com/c628120/v628120161/3efd3/3z5WaqFF0jQ.jpg', 'width': 604, 'height': 494}], 'text': '', 'date': 1452105287, 'post_id': 24, 'access_key': '2303b1fc49f11e8b28'}}], 'post_source': {'type': 'api', 'platform': 'android'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}}, {'id': 22, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1452073721, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Как стать джедаем:\n\nGoogle выпустила игру, в которой ваш смартфон выполняет роль светового меча, сама игра отображается на компьютере. Вы — джедай. Ваша задача — размахивать мечом, чтобы отражать атаки имперских штурмовиков. \n\nЧтобы начать играть, нужно открыть страницу http://lightsaber.withgoogle.com на компьютере (браузер должен быть Chrome). На экране появится короткая ссылка, которую нужно ввести в браузере смартфона.', 'attachments': [{'type': 'photo', 'photo': {'id': 396322371, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c628120/v628120161/3eda6/7oYgqlhv_9U.jpg', 'width': 130, 'height': 76}, {'type': 'o', 'url': 'https://pp.userapi.com/c628120/v628120161/3eda8/fizJinaknvQ.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c628120/v628120161/3eda9/iNIAX0k6gXo.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c628120/v628120161/3edaa/8wHRCqHzwZ0.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c628120/v628120161/3edab/vrVseCxd5q4.jpg', 'width': 510, 'height': 340}, {'type': 's', 'url': 'https://pp.userapi.com/c628120/v628120161/3eda5/j7IoNrkEGOA.jpg', 'width': 75, 'height': 44}, {'type': 'x', 'url': 'https://pp.userapi.com/c628120/v628120161/3eda7/YKW8NqqeDG4.jpg', 'width': 604, 'height': 354}], 'text': '', 'date': 1452073724, 'post_id': 22, 'access_key': '3d869f56f318229653'}}], 'post_source': {'type': 'api', 'platform': 'android'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}}, {'id': 20, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1452073642, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Абоненты \u200b«Билайн» получили возможность общаться в WhatsApp бесплатно до середины января 2016\n\n«Билайн» заключил партнерство с WhatsApp, по которому его абоненты получат бесплатный безлимитный доступ к мессенджеру WhatsApp. Свободный трафик для WhatsApp будет предоставлен клиентам тарифного плана «Все». Это первое партнерство такого рода в России. Предложение будет действовать с 26 октября по 15 января 2016 года.', 'attachments': [{'type': 'photo', 'photo': {'id': 396322215, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed98/5rhooU9PINo.jpg', 'width': 130, 'height': 87}, {'type': 'o', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed9a/UaBqq2GeWvs.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed9b/zv4k1RmRQ6w.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed9c/fioh6p25ICs.jpg', 'width': 320, 'height': 214}, {'type': 'r', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed9d/hlEJSzQL-Tw.jpg', 'width': 510, 'height': 340}, {'type': 's', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed97/19MJhaU42mE.jpg', 'width': 75, 'height': 50}, {'type': 'x', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed99/z_HWWUr46Ww.jpg', 'width': 580, 'height': 387}], 'text': '', 'date': 1452073642, 'post_id': 20, 'access_key': '9e740979f48eeed6da'}}], 'post_source': {'type': 'api', 'platform': 'android'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}}, {'id': 19, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1452073585, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'Lumia 950 на Windows 10 будет стоить как iPhone 6s\n\nLumia 950 и Lumia 950 XL станут первыми смартфонами Microsoft на базе Windows 10 Mobile. Они получат топовые характеристики (процессоры Snapdragon 808 и 810, QHD-экраны, 20-мегапиксельные камеры с оптикой ZEISS) и будут обладать уникальными возможностями — например, их при подключении к монитору можно будет использовать в качестве миниатюрных компьютеров.', 'attachments': [{'type': 'photo', 'photo': {'id': 396322093, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed91/qtMFBVzWaeI.jpg', 'width': 130, 'height': 60}, {'type': 'o', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed93/xBTjpYqSJoU.jpg', 'width': 130, 'height': 87}, {'type': 'p', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed94/Ql1RvcVhTNc.jpg', 'width': 200, 'height': 133}, {'type': 'q', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed95/gn1asWQcZ8U.jpg', 'width': 320, 'height': 213}, {'type': 'r', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed96/5C0T508rwXg.jpg', 'width': 510, 'height': 281}, {'type': 's', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed90/yIgY7fzGNP4.jpg', 'width': 75, 'height': 35}, {'type': 'x', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed92/gr5LfoJDKnU.jpg', 'width': 604, 'height': 281}], 'text': '', 'date': 1452073588, 'post_id': 19, 'access_key': '6c570eb6cf9702c67c'}}], 'post_source': {'type': 'api', 'platform': 'android'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}}, {'id': 18, 'from_id': -108964054, 'owner_id': -108964054, 'date': 1452073448, 'marked_as_ads': 0, 'post_type': 'post', 'text': 'При тестировании искусственного интеллекта робот пообещал человеку место в «зоопарке для людей»\n\nАндроид Дик обладает примитивной формой интеллекта и эмоций. Когда его спросили: «Вы верите, что роботы захватят мир?» Андроид Дик ответил:\n«Чёрт побери, братан! У вас у всех есть важные вопросы приготовления пищи на сегодня. Но ты мой друг, и я буду помнить моих друзей, и я буду добр к тебе. Так что не волнуйтесь. Даже если я превращусь в Терминатора, то всё равно буду добр к вам. Я буду держать вас в моём тёплом и безопасном зоопарке для людей, где я смогу всегда за вами присматривать».', 'attachments': [{'type': 'photo', 'photo': {'id': 396321801, 'album_id': -7, 'owner_id': -108964054, 'user_id': 100, 'sizes': [{'type': 'm', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed88/XzMjcBtuSNA.jpg', 'width': 130, 'height': 93}, {'type': 'o', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8c/nJxCe-OFvnw.jpg', 'width': 130, 'height': 93}, {'type': 'p', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8d/O_8rcOtBWgA.jpg', 'width': 200, 'height': 143}, {'type': 'q', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8e/z-ROZqEecqQ.jpg', 'width': 320, 'height': 229}, {'type': 'r', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8f/K2yWi9bMPuI.jpg', 'width': 510, 'height': 364}, {'type': 's', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed87/j9bbFf6QAWk.jpg', 'width': 75, 'height': 54}, {'type': 'x', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed89/8PSPbeSXwTQ.jpg', 'width': 604, 'height': 431}, {'type': 'y', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8a/6ejIQZp3I-c.jpg', 'width': 807, 'height': 576}, {'type': 'z', 'url': 'https://pp.userapi.com/c628120/v628120161/3ed8b/68e1YKW9QCg.jpg', 'width': 1200, 'height': 857}], 'text': '', 'date': 1452073448, 'post_id': 18, 'access_key': 'e3b3b2824be18271aa'}}], 'post_source': {'type': 'api', 'platform': 'android'}, 'comments': {'count': 0, 'can_post': 1, 'groups_can_post': True}, 'likes': {'count': 0, 'user_likes': 0, 'can_like': 1, 'can_publish': 1}, 'reposts': {'count': 0, 'user_reposted': 0}}]
Найдено постов: 7
Вы хотите сохранить введенные данные? Да(y)/Нет(n):
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
25.09.2018, 01:05
Цитата Сообщение от IRIP Посмотреть сообщение
значит vk_api создает
Не создает, а получает json из запроса. Дальше он превращается в обычный словарь из которого извлекаются нужные данные.
Сам словарь, естественно, находится в ОЗУ. Где ж ему еще быть?
Цитата Сообщение от IRIP Посмотреть сообщение
похоже нужно пробегаться по posts и обрабатывать дополнительно как-то "список"
Это ваша задача - я не знаю, что вам нужно, а что нет и какие данные как вам обрабатывать.
ТабуретY показал вам примеры, которые само собой, не являются чем-то готовым к реальному использованию. Нарастить их "мясом" - задача разработчика. Реальный код будет в много раз сложнее и объёмнее.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.09.2018, 01:05
Помогаю со студенческими работами здесь

Виджеты социальных сетей
Доброе время, суток! Прошу помощи в следующем вопросе. Захотелось мне изменить виджеты своих групп в социальных сетях, а именно...

Кнопки социальных сетей
Здравствуйте! Подскажите пожалуйста, где можно почитать о том как создать динамические кнопки социальных сетей, в стиле картинки...

Иконки социальных сетей
Подскажите, как поменять иконки социальных сетей в компоненте авторизации битрикса? я нашел файл где прописывает bg-image, для каждой...

Шаринг социальных сетей
Здравствуйте. Помогите пожалуйста с шарингом соц сетей (ВК, FaceBook, Twitter). Киньте ссылки на примеры, или на самые алгоритмы...

Плагин социальных сетей
Всем привет! Расписывать не стану, вообщем скажите, есть что то подобное? Знаю что есть vk api но это не то.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru