質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

1174閲覧

ツイートを削除しても再度投稿されてしまう

study_111

総合スコア82

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2020/05/08 09:15

編集2020/05/08 11:10

ツイッターAPIを使用し、ツイートを行なったのですが、プログラム側から行なったツイートを、ブラウザからツイッターにアクセスし消したのですが、消しても消してもツイートが再度投稿されてしまう現象が起きてしまいました。
該当のコードは下記になります。

from twitter import Twitter, OAuth t = Twitter(auth = OAuth(access_token, access_token_secret, api_key, api_secret)) text = ('tweet。\n' + input_tweet_date + '\ntweet。\n') statusUpdate = t.statuses.update(status=text)

ブラウザ側からツイートを削除しても数十秒後には再度また投稿されてしまいます。
現在は、text = ('tweet。\n' + input_tweet_date + '\ntweet。\n')ここの部分をtext = ('')このように空にし、スクリプトを実行することで投稿される現象を防いでいる状況です。
何故、ツイートを削除した際に再度投稿されてしまうのかが分からない為、ご助言頂けましたら幸いです。

追記
pythonのバージョンは「Python 3.6.9」を使用しております。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yasumichi

2020/05/08 09:33

一応、使用中の Python のバージョンと Twitter を生成しているモジュールの名前とバージョンを提示いただけますか?
study_111

2020/05/08 09:40

pythonのバージョンは「Python 3.6.9」使用モジュールは「from twitter import Twitter, OAuth」を使用しております。
y_waiwai

2020/05/08 09:51

ブラウザから消す、とはどういう操作で消してるってことでしょうか
Yasumichi

2020/05/08 09:59

ブラウザーと同じで同じ内容でも何回でも投稿できちゃうんじゃないかな、とか思ってたり。 プログラム側で既に投稿した内容を投稿しないように管理するしか、ないんじゃないかなあと。 今、Application 作ろうと思ったら、何をしたいのか、200字以上の英語で説明するように言われたので萎えました。
study_111

2020/05/08 10:02

ブラウザから消すというのは、ブラウザからツイッターにアクセスをし、プログラム側から投稿したツイートを削除するといった流れです。
study_111

2020/05/08 11:11

> プログラム側で既に投稿した内容を投稿しないように管理するしか、ないんじゃないかなあと。 一度スクリプトを実行した後に、削除したにも関わらず再度投稿されるという部分がどうも、疑問なんですよね...
Yasumichi

2020/05/08 11:17

プログラム自体は、停止しているという意味ですか?
study_111

2020/05/08 11:20

>プログラム自体は、停止しているという意味ですか? はい。サーバーからスクリプトを実行後、コマンドが入力できる状態になっている為、プログラムの方は停止していると思われます。
study_111

2020/05/08 11:32

キャッシュ的なものかと思い、スマホからも確認したんですが、再投稿されていたんですよね...
Yasumichi

2020/05/08 11:55

cron 仕掛けた訳ではないですよね?
study_111

2020/05/08 12:17 編集

あ、cronは設定してはいるのですが、時間を指定している為、cronの可能性はないかなとは思ったんですよね...
Yasumichi

2020/05/08 12:20

念のため、一度、設定を見直してみてはいかがでしょうか?
study_111

2020/05/08 12:23

cronファイル内には3つ実行コマンドを設定しているのですが、 「30 9 * * *」「0 10 * * *」「30 10 * * *」ですので、毎日午前中にしか動作はしないはずなのですが、普通にさっきも試したのですが、ツイート削除後に再投稿されてしまいました... 自分が気になっている部分は、「ツイート削除後」にしか再投稿されないという部分なのですが、どうもそこが引っかかるんですよね...
quickquip

2020/05/08 13:02 編集

> 「ツイート削除後」にしか再投稿されない "一つ前と同じ文面のツイートができない"仕様があるので(同じコードが動き続けているとしたら)ここは特に不思議ではないです。手で削除するとツイートできるのもそのせいでしょう。()内を追記しました
Yasumichi

2020/05/08 12:48

サーバーの時刻がずれてるということはないですよね?
study_111

2020/05/08 12:55 編集

>一つ前と同じ文面のツイートができない"仕様があるのでここは特に不思議ではないです あ....だとすると、何かおかしいですね... >サーバーの時刻がずれてるということはないですよね? 「 date_now = datetime.datetime.now() 」こちらの実行結果は、「2020-05-08 12:51:48.999678」でした。時間の表示だけ少しおかしいですね... ですが、不思議なことに、午前中のcronの設定した時間(9時半)には定期実行が行われていたんですよね...
study_111

2020/05/08 12:59

念のため、タイムゾーンを「JST = timezone(timedelta(hours=+9), 'JST')」このように設定しておきました。
study_111

2020/05/08 13:03

あ、もしかしたら、タイムゾーンを設定したことで、改善されたかもしれません。
study_111

2020/05/08 13:03 編集

と思ったら、また再投稿されてました...
quickquip

2020/05/08 13:24

コードを全文載せてみた方がよいのではないでしょうか?
study_111

2020/05/08 13:28

実は、業務の関係上全文載せられない状況でして...
Yasumichi

2020/05/08 14:34

"" にしててもまだ、投稿されているって認識でよろしいでしょうか? だとすると、コピーかなんかが残ってて、別のユーザーの cron で動いているとか?
study_111

2020/05/08 23:27

まだ、質問の現象は解決出来ていないですね... cronでは時間を指定しているのですが、プログラムからツイートを投稿し、いつ削除を行っても、再度同じように即投稿されてしまうのですよね...
study_111

2020/05/08 23:45

もしかしたら、今度こそ解決出来たかもしれません。 cron自体は、設定ファイルを読み込む形「crontab cron.conf」としていたのですが、それとは別に「crontab -e」で1秒毎に定期実行されるように設定していましたため、その設定を削除し再度テストしましたら、削除した後に投稿される問題は解決出来ました。
guest

回答1

0

自己解決

「crontab cron.conf」としてcronを設定したファイルを読み込んでいたのですが、「crontab -e」として、毎秒定期実行されるようcronを設定していたのですが、こちらの設定を削除していなかったことで、二重の設定になってしまっていたことが原因でした。

投稿2020/05/08 23:57

編集2020/05/09 00:01
study_111

総合スコア82

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問