2017-01-21 8 views
-1

多くの助けを借りてYouTubeにアップロードするPythonスクリプトを書きました。必要に応じてthis questionを参照してください。Pythonスクリプトのテキスト文字列に日付情報を追加します。

毎日動画をアップロードするときにタイトル情報に日付情報を追加する必要があります。これらはすべてページ上で非常によく似ています。これは、ビデオタイトルは「パーラメントオタワカナダの時間の経過のためのように出てくるになるだろう

$myVideoEntry->setVideoTitle('Parliament Hill Ottawa Canada Time lapse for ' . date('D, jS F Y', mktime(0, 0, 0, date("m"), date("d")-1))); 

:私は私のような説明の最後に日付を追加することができますPHPに走った私の古いスクリプトで

金、2017年1月20日。

python upload_video.py -- file=/home/www/localhost/htdocs/Jpeg2/history2/webcam2-video-hi.avi --title="Parliament Hill Ottawa Canada Timelapse" --description="Video of images taken through the day" --keywords="timelapse, Time-lapse-Photography, Canada, Ontario, video, Hill, weather" --category=19 --privacyStatus="public" --noauth_local_webserver 

私は、日付情報を追加しようとしましたが、日付情報がフィールドの後に追加されていない中にあった場合、スクリプトは常にエラーを与えている「」:

新しいPythonのコマンドラインは、次のようになります。 。私はPHPのようにこれを行う方法があることを願っています。

私の質問は、日付情報を持つ古いPHPのように見えるようにする方法です。日付は、スクリプトが真夜中に実行されるように、昨日の日付です。そのため、ビデオは昨日です。私は私が上記したい形式で昨日の日付を取得することができません。:

除く日付情報と、彼らはすべての仕事を得ることができるかどうかを確認するためにテストスクリプトを作成しIrisshpunk @ :

おかげ

EDITを

python << END 
import time 
import datetime 
print("Current date and time: " , datetime.datetime.now()) 
print("Current year: ", datetime.date.today().strftime("%Y")) 
print("Month of year: ", datetime.date.today().strftime("%B")) 
print("Week number of the year: ", datetime.date.today().strftime("%W")) 
print("Weekday of the week: ", datetime.date.today().strftime("%w")) 
print("Day of year: ", datetime.date.today().strftime("%j")) 
print("Day of the month : ", datetime.date.today().strftime("%d")) 
print("Day of week: ", datetime.date.today().strftime("%A")) 

import datetime 
today = datetime.date.today() 
yesterday = today - datetime.timedelta(days=1) 
print yesterday 
END 

これは以下を生成します。

('Current date and time: ', datetime.datetime(2017, 1, 21, 18, 42, 18, 750076)) 
('Current year: ', '2017') 
('Month of year: ', 'January') 
('Week number of the year: ', '03') 
('Weekday of the week: ', '6') 
('Day of year: ', '021') 
('Day of the month : ', '21') 
('Day of week: ', 'Saturday') 
2017-01-20 

以下は、私が走ったスクリプトであると私は日付情報ADDEを取得する方法がわかりませんそれが呼び出された場合は、 "title"文字列にdを追加します。

echo "Start Youtube upload Python script" 
cd /path to/youtube-upload/ 
python upload_video.py --file=/home/www/localhost/htdocs/Jpeg2/history2/webcam2-video-hi.avi --title="Parliament Hill Ottawa Canada Timelapse" --description="Video of images taken through the day of Parliament House" --keywords="timelapse, Time-lapse-Photography, Parliament, Parliament Hill, Canada, Ontario, video, Hill, weather" --category=19 --privacyStatus="public" --noauth_local_webserver 

これはそのままの状態で動画をアップロードします。 "upload_video.py"はapiと一緒にダウンロードされ、私は思っていない問題ではありません。あなたは、私はこのような日付関数を使用してみましたhere

コードを見ることができます:

python upload_video.py --file=/home/www/localhost/htdocs/Jpeg2/history2/webcam2-video-hi.avi --title="Parliament Hill Ottawa Canada Timelapse"$(date --date="-1 day") --description="Video of images taken through the day of Parliament House" --keywords="timelapse, Time-lapse-Photography, Parliament, Parliament Hill, Canada, Ontario, video, Hill, weather" --category=19 --privacyStatus="public" --noauth_local_webserver 

をそして、これは誤りです:

Start Youtube upload Python script 
usage: upload_video.py [--auth_host_name AUTH_HOST_NAME] 
        [--noauth_local_webserver] 
        [--auth_host_port [AUTH_HOST_PORT [AUTH_HOST_PORT ...]]] 
        [--logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}] 
        --file FILE [--title TITLE] [--description DESCRIPTION] 
        [--category CATEGORY] [--keywords KEYWORDS] 
        [--privacyStatus {public,private,unlisted}] 
upload_video.py: error: unrecognized arguments: 20 Jan 19:09:39 EST 2017 

そこで質問で昨日の日付を取得する方法ですPythonをこの文字列に追加する--title = "Parliament Hill Ottawa Canada Timelapse"これは文字列に含まれています。

+1

はあなたがそれが機能していない試みたPythonコードを共有してもらえますか?私たちが見えなくても、それを修正するのを手助けすることはできません。ハックとして、unixの日付ユーティリティを使用し、コマンドラインで次のように日付を追加することができます:--title = "name" $(date -iso-8601) – Irisshpunk

+1

は常にFULLエラーメッセージ(トレースバック)を入れます。私たちはあなたの心の中で読むことができません。 – furas

+0

あなたは標準モジュール[datetime](https://docs.python.org/3.5/library/datetime.html)を使って日付と時刻を扱えます。 'today()'と 'timedelta()'を追加することができます文字列 'strftime()'に変換する - [strftime.org](http://strftime.org/)参照BTW:文字列を連結するには '+'を使います。 – furas

答えて

0

OK提供された情報を使用して日付機能を検索し、解決策を見つけました。私が少しずつ質問をしたように、3人の寄稿者の皆さん、ありがとう。あなたが興味がある場合は、ビデオhereまたはhereを見ることができます。スクリプトに追加された最初のものは、東部時間1月21日の真夜中になります。

最終スクリプトは次のようになります。

#!/bin/bash 
yest=$(date --date="yesterday" +"%A %d %b %Y") 
echo "Start Youtube upload Python script" 
cd /home/www/localhost/htdocs/scripts/youtube-upload/ 
python upload_video.py --file=/home/www/localhost/htdocs/Jpeg2/history2/webcam2-video-hi.avi --title="Parliament Hill Ottawa Canada Timelapse for"" $yest" --description="Video of images taken through the day of Parliament House" --keywords="timelapse, Time-lapse-Photography, Parliament, Parliament Hill, Canada, Ontario, video, Hill, weather" --category=19 --privacyStatus="public" --noauth_local_webserver 
関連する問題