Что нового

Twitter - библиотека для работы с твиттером.

inververs

AutoIT Гуру
Сообщения
2 135
Репутация
462
AutoIt: 3.3.8.1
Версия: 1.1

Категория: Интернет, Кодирование, Шифрование, Сеть, Твиттер

Описание:
Всем любителям писать твиты или ретвиты посвящается.
Библиотека имеет 2 функции: Написать твит и сделать ретвит.
Но по аналагии с ними можно повторить любые другие.
Внимание, что бы твиттер принимал ваши сообщения время на компьютере должно быть синхронизировано!

  • Для работы понадобится WinINet.au3. Скачать тут WinINet.au3

  • Зарегистрируте сперва вашу программу в twitter, https://dev.twitter.com/apps

  • Затем дайте ей права Read и Write

  • Сгенерируйте ключи access token

  • Получите 4 ключа 1 - Consumer key, 2 - Consumer secret, 3-Access token, 4 - Access token secret

  • Передаете их как параметры в функцию _Twitter_SetKeys

Список функций:
Код:
_Twitter_SetKeys
_Twitter_Open
_Twitter_Close
_Twitter_Tweet
_Twitter_ReTweet

Пример 1. Отправляем твит:
Код:
#include 'Twitter.au3'
_Twitter_Open()
_Twitter_SetKeys('Consumer key', 'Consumer secret', 'Access token', 'Access token secret')
ConsoleWrite(_Twitter_Tweet('Мой первый твит') & @LF)
_Twitter_Close()


Пример 2. Отправляем ретвит:
Код:
#include 'Twitter.au3'
_Twitter_Open()
_Twitter_SetKeys('Consumer key', 'Consumer secret', 'Access token', 'Access token secret')
ConsoleWrite(_Twitter_ReTweet('391664352433950720') & @LF)
_Twitter_Close()



Пример 3 Использует другую функцию из API:
Проверка валидности ключей
Код:
#include 'Twitter.au3'
_Twitter_Open()
_Twitter_SetKeys('Consumer key', 'Consumer secret', 'Access token', 'Access token secret')

Local $vOut = verify_credentials()
If @error Then
	ConsoleWrite('- Не авторизирован' & @LF)
Else
	ConsoleWrite('+ Авторизирован' & @LF)
EndIf
ConsoleWrite($vOut & @LF)
_Twitter_Close()

Func verify_credentials()
	Local $s = 'https://api.twitter.com/1.1/account/verify_credentials.json?skip_status=true'
	Local $aData = __Twitter_CreateSignature('GET', $s)
	Local $vData = __Twitter_ProcessRequest($aData)
	If @extended = 401 Then Return SetError(1,0,$vData)
	Return SetError(0,0,$vData)
EndFunc


Версия 1.0 использует библиотеку WinHTTP twitter.au3

Версия 1.1 использует библиотеку WinInet

История версий:
1.0 Первая версия
1.1 Переписана для библиотеки WinINet. Смотри вложение.

Источник: autoit-script.ru
Автор(ы): inververs
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
Re: Twitter

дай более информативное название теме.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 159
Репутация
2 329
Re: Twitter - библиотека для работы с твиттером

Это только для твитов от своего имени?
А что если я хочу создать оболочку для пользователя, чтобы он мог авторизироваться от своего имени и делать твиты и т.п.?
 
Автор
inververs

inververs

AutoIT Гуру
Сообщения
2 135
Репутация
462
Re: Twitter - библиотека для работы с твиттером

CreatoR, мне кажется, вам уже нужно развиваться как веб разработчику. Смотрю ваши последние темы и вижу, что бы делаете вещи в языке, который для этого не предназначен. Имхо, оставьте autoit его сферу автоматизации и посмотрите на другие языки и перед вами откроются совершенно неожиданные возможности. Мне кажется, веб - это для вас.
По теме, твиттер, безусловно поддерживает авторизацию для таких пользователей, конкретно - он меняет юзернем и пароль на токен. Как он это делает - нужно искать в документации, т.к в этой библиотеке он не реализован. Да я не уверен, работает ли вообще еще эта udf, столько лет прошло. ;)
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 159
Репутация
2 329
Re: Twitter - библиотека для работы с твиттером

OffTopic:
inververs [?]
мне кажется, вам уже нужно развиваться как веб разработчику
Да вот пытаемся, но никак не осилю. Мне конкретно нужно не так веб, как разработка мобильных приложений... хотя оно наверно тесно связано


Как он это делает - нужно искать в документации
Ох искал я, голова аж кружится. Для facebook'а к примеру, всё намного проще (в плане прикручивания к AutoIt), там API хоть и ограничен, но с ним проще работать.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 159
Репутация
2 329
Re: Twitter - библиотека для работы с твиттером

Вот так получается добыть токен:

Код:
#include <Encoding.au3>

$sKey = 'Consumer Key'
$sSecret = 'Consumer Secret'

$sBase64 = StringStripWS(_Encoding_Base64Encode($sKey & ':' & $sSecret), 8)
$iPID = Run(@DesktopDir & '\curl.exe -X POST "https://api.twitter.com/oauth2/token" -H "Authorization:Basic ' & $sBase64 & '" -d "Content-Type:application/x-www-form-urlencoded;charset=UTF-8" -d "grant_type=client_credentials"', '', @SW_HIDE, 6)
ProcessWaitClose($iPID)
$sRead = StdoutRead($iPID)
ConsoleWrite($sRead & @CRLF)


но вот что дальше с ним делать, для авторизации он не подходит вроде...
 
Автор
inververs

inververs

AutoIT Гуру
Сообщения
2 135
Репутация
462
Re: Twitter - библиотека для работы с твиттером

Тут я вам не помогу, вновь разбираться с этим не хочется.
 
Верх