애니메이션 자막을 바탕으로 자동으로 생성된 글은 일정한 간격으로 트위터를 진행한다

4100 단어 PHPPythonTwiiteroauth

개요


애니메이션 자막을 기반으로 마르코프 체인을 통해 문장 자동 생성 - Qita의 계속.
일정 간격 내에 자동으로 생성된 글을 Twitter할 수 있는bot 계정을 만들었습니다.
애니메이션을 보면서 일본어를 배울 수 있는bot-Twitter

컨디션


ubuntu 18.04 LTS/python 3.6.7/php 7.2.17

TwitterAPI 사용 요청


트위터 기능을 사용하기 위해서는 API를 신청해야 할 것 같다.이 글※ 2018년 9월 정보-Qita을 참고하여 신청하여Consummer 열쇠와 방문 영패를 받았습니다.

Twitter OAuth로 Twitter 진행


API를 사용하려면 Twitter OAuth가 필요하기 때문에 https://github.com/abraham/twitteroauth에서 다운로드, 압축을 풀고 적당한 디렉터리에 넣는다.
어쨌든 이런 목록 구성이야.
~/workspace/
  ┣ twitteroauth/
  ┣ assdumper/
  ┣ Videos/
  ┃    録画した.tsファイルをすべてここに入れておく
  ┣ wakatigaki.txt
  ┣ ass2text.py
  ┗ generate_text.py
공식 문서https://twitteroauth.com/를 참고하여 아래 코드를 사용해 보았습니다.
tweet.php
<?php

//OAuthライブラリの読み込み
require "twitteroauth/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;

//認証情報
$consumerKey = '取得したconsumerKey';
$consumerSecret = '取得したconsumerSecret';
$accessToken = '取得したaccessToken';
$accessTokenSecret = '取得したaccessTokenSecret';

//接続
$connection = new TwitterOAuth( $consumerKey, $consumerSecret, $accessToken, $accessTokenSecret );

//文章生成
exec( 'python3 generate_text.py', $out );

//tweet
$statues = $connection->post( "statuses/update", [ "status" => $out[ 0 ] ] );

?>

워크스페이스 바로 아래에서 이 파일을 실행하면 자동으로 생성된 글이 트위터에 올라옵니다.

crontab에서 스케줄링


이후crontab로 스케줄링을 진행하면 완성됩니다.
crontab */20 * * * * cd ~/workspace && php tweet.php

이렇게 20분마다 자동으로 생성되는 글이 트위터에 올라온다.

후기


기사에 쓰지 않은 것은 사람을 곤란하게 할 정도로 간단하다
트위터 API로 신청할 때 영어 작문이 제일 힘들죠.
Twitter Oauth씨 맞죠?

좋은 웹페이지 즐겨찾기