現在、JenkinsでビルドをトリガするためにPycURLを使用しています。特定のURLに投稿します。標準のPythonライブラリを使用してHTTP経由でファイルを投稿するには
curl = pycurl.Curl()
curl.setopt(pycurl.URL, url)
# These are the form fields expected by Jenkins
data = [
("name", "CI_VERSION"),
("value", str(version)),
("name", "integration.xml"),
("file0", (pycurl.FORM_FILE, metadata_fpath)),
("json", "{{'parameter': [{{'name': 'CI_VERSION', 'value':"
"'{0}'}}, {{'name': 'integration.xml', 'file': 'file0'}}]}}".
format(version,)),
("Submit", "Build"),
]
curl.setopt(pycurl.HTTPPOST, data)
curl.perform()
あなたが見ることができるように、ポストパラメータ(「file0」)の一つのパラメータの種類pycurl.FORM_FILEによって示されるように、ファイルで次のように関連するコードが見えます。
PycURLの使用方法を標準のPythonライブラリに置き換えるにはどうすればよいですか?
純粋なPythonパッケージがOKかあなたが本当に一人で標準ライブラリを使用するようにしたいですか? –
@PiotrDobrogost質問は本当に標準ライブラリについてですが、参照用に純粋なPythonソリューションを投稿できると思います。私は[要求](http://python-requests.org)ライブラリで問題を自分で解決することができました。 – aknuds1
これは私がお勧めしたいものです。 [PythonスクリプトからPOSTを使ってファイルを送信する](http://stackoverflow.com/q/68477/95735) –