Всем привет. Для некоторых нужд необходимо проверить количество новостей по хештегам ВК, сделал бы и ручками все... но их очень много (( В голову пришла идея организовать это все через питон, но опыта работы с питоном ~ неделя.
В общем есть список хештегов в txt документе вида:
PHP код:
#вася
#петя
#деньги
#vkontakte
т.е. новый тег - с новой строки...
Набросал заготовку, но как сделать чтобы брались теги из документа in.txt и в конечном итоге записывались в документ out.txt уже с количеством новостей по данному тегу вообще не пойму...
В голове то все понятно - тут берется -> проверяется -> записывается уже с числом.... не понятно...
Может кто поможет с данной задачей...
PHP код:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from __future__ import division
import time
from time import time as timer
import requests
import json
import os
import os.path
west0293, <1000 - мало, мне как раз от 1к надо или даже от 5 000... Но спасибо за помощь всеже !! Ну на питоне то выдает "total_count" )) Я почти доковырял код, но со строками что-то я вообще не догоняю.... Берутся строки из файла, но как указать брать первую... затем вторую и тд.. я чтот вообще не але(( Мб даже в коде где то запутался - не знаю...
PHP код:
#!/usr/bin/env python # -*- coding: utf-8 -*-
from __future__ import division import requests import json import os import os.path
if True: file = open('in.txt', 'r') for line in file: q = line import urllib q = urllib.quote(q.encode('utf-8')) url = 'https://api.vk.com/method/newsfeed.search?q=%s&count=3&v=5.28' %(q) resp = requests.get(url).json()['response'] total_count = resp['total_count'] file = open('out.txt', 'w') file.write ((q) + (' = ') + str(total_count)) file.close()
Запускаешь: берется последняя строка и все - конец )) Первый язык программирования дается, но с боооольшим трудом))
Сейчас не подскажу, но быстро пробежавшись по коду: все импорты должны идти в начале файла(import urllib в самом коде непорядок). Почему именно Python 2? Лучше сразу использовать Python 3.
Облачный хостинг из TOP-3 - от 1 Gb ОЗУ, от 25 GB SSD.
tags = open('tags.txt', 'r') result = open('result.txt', 'w') api = 'https://api.vk.com/method/newsfeed.search?q=%s&count=1&v=5.28'
for tag in tags: tag = tag.strip().lstrip('#') url = api % tag r = requests.get(url) content = json.loads(r.text) total_count = content['response']['total_count'] tag = '%s %d \n' % (tag, total_count) result.write(tag)
tags.close() result.close()
Если ищете # + что-то, то total_count не будет в результате
Последний раз редактировалось Morgan; 25.02.2015 в 01:14.
webm0ney, у меня вот тоже total_count не отдает... Можешь скинуть пример запроса, которому он отдает total_count? P.s. Т.е сделай print url в конце,чтобы глянуть сформированный запрос.