タグ付けされた質問 「python-requests」

PYTHONリクエストライブラリにのみ使用してください。リクエストは、使いやすい論理APIを備えたフル機能のPython HTTPライブラリです。


5
requests.requestにmax_retriesを設定できますか?
Pythonのリクエストモジュールはシンプルでエレガントですが、バグが1つあります。次のようなメッセージでrequests.exception.ConnectionErrorを取得することは可能です。 Max retries exceeded with url: ... これは、リクエストがデータへのアクセスを数回試行できることを意味します。しかし、ドキュメントのどこにもこの可能性についての単一の言及はありません。ソースコードを確認したところ、デフォルト(おそらく0)の値を変更できる場所は見つかりませんでした。 それで、リクエストの最大再試行回数を何らかの方法で設定することは可能ですか?

19
python requests.get応答全体のタイムアウト
私はウェブサイトのリストに関する統計を収集しており、単純化するためにそれに対するリクエストを使用しています。これが私のコードです: data=[] websites=['http://google.com', 'http://bbc.co.uk'] for w in websites: r= requests.get(w, verify=False) data.append( (r.url, len(r.content), r.elapsed.total_seconds(), str([(l.status_code, l.url) for l in r.history]), str(r.headers.items()), str(r.cookies.items())) ) ここでrequests.get、ループがスタックしないように、10秒後にタイムアウトしたいと思います。 この質問は以前にも関心がありましたが、明確な答えはありません。良い答えを得るためにこれにいくつかの賞金をかけます。 リクエストを使わないのは良い考えだと聞きましたが、リクエストが提供する素晴らしいものをどうやって手に入れるべきでしょうか。(タプル内のもの)

9
パッケージをオフラインでインストールする方法は?
Pythonパッケージをダウンロードする最良の方法は何ですか?それは別のマシンにオフラインでインストールするためのpypiからの依存関係ですか?これをpipまたはeasy_installで簡単に行う方法はありますか?インターネットに接続されていないFreeBSDボックスにリクエストライブラリをインストールしようとしています。

10
Python 'Requests'モジュールを使用したプロキシ
Pythonの優れたRequestsモジュールについての短い、シンプルなもの。 変数「プロキシ」に何を含める必要があるのか​​、ドキュメントに記載されていないようです。標準の "IP:PORT"値を持つdictを送信すると、2つの値を要求することを拒否されました。それで、私は(これはドキュメントでカバーされていないように見えるので)最初の値はIPであり、2番目はポートであると思いますか? ドキュメントはこれについてのみ言及しています: proxies –(オプション)プロキシのURLへの辞書マッピングプロトコル。 だから私はこれを試しました...私は何をすべきですか? proxy = { ip: port} そして、それらをdictに入れる前にこれらをあるタイプに変換する必要がありますか? r = requests.get(url,headers=headers,proxies=proxy)


12
リクエストのURLで最大再試行回数を超えました
App Store> Businessのコンテンツを取得しようとしています: import requests from lxml import html page = requests.get("https://itunes.apple.com/in/genre/ios-business/id6000?mt=8") tree = html.fromstring(page.text) flist = [] plist = [] for i in range(0, 100): app = tree.xpath("//div[@class='column first']/ul/li/a/@href") ap = app[0] page1 = requests.get(ap) 私がしようとするrangeと(0,2)、それは動作しますが、私が置いたときrangeに100、Sはこのエラーを示しています。 Traceback (most recent call last): File "/home/preetham/Desktop/eg.py", line 17, in <module> page1 = …

3
パラメータデータを含むPythonリクエストポスト
これは、API呼び出しの未加工のリクエストです。 POST http://192.168.3.45:8080/api/v2/event/log?sessionKey=b299d17b896417a7b18f46544d40adb734240cc2&format=json HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: application/json Content-Length: 86 Host: 192.168.3.45:8080 Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5) {"eventType":"AAS_PORTAL_START","data":{"uid":"hfe3hf45huf33545","aid":"1","vid":"1"}}""" この要求は成功(2xx)応答を返します。 今私はこのリクエストを使用して投稿しようとしていrequestsます: >>> import requests >>> headers = {'content-type' : 'application/json'} >>> data ={"eventType":"AAS_PORTAL_START","data{"uid":"hfe3hf45huf33545","aid":"1","vid":"1"}} >>> url = "http://192.168.3.45:8080/api/v2/event/log?sessionKey=9ebbd0b25760557393a43064a92bae539d962103&format=xml&platformId=1" >>> requests.post(url,params=data,headers=headers) <Response [400]> 私にはすべてが問題なく見え、400応答を取得するために何を間違って投稿したかはよくわかりません。


1
リクエスト— 404を取得しているかどうかを確認する方法
リクエストライブラリを使用して、次のコードでWebサイトにアクセスし、そこからデータを収集しています。 r = requests.get(url) 不適切なURLが入力され、404エラーが返された場合のエラーテストを追加したいと思います。意図的に無効なURLを入力した場合、これを行うと次のようになります。 print r 私はこれを手に入れます: <Response [404]> 編集: それをテストする方法を知りたいです。オブジェクトタイプは同じです。r.contentまたはを実行するr.textと、カスタム404ページのHTMLを取得するだけです。

5
非同期でリクエストを使用するにはどうすればよいですか?
で並列http要求タスクを実行したいのですがasyncio、それpython-requestsによってのイベントループがブロックされますasyncio。aiohttpを見つけましたが、httpプロキシを使用したhttpリクエストのサービスを提供できませんでした。 ので非同期のhttpリクエストを行う方法があるかどうかを知りたいですasyncio。

4
Pythonリクエストを使用してブラウザに偽装する方法は?
以下のサイトからコンテンツを入手したい。FirefoxやChromeなどのブラウザを使用すると、希望する実際のWebサイトページを取得できますが、Pythonリクエストパッケージ(またはwgetコマンド)を使用して取得すると、まったく異なるHTMLページが返されます。私はウェブサイトの開発者がこれのためにいくつかのブロックを作ったと思ったので、問題は: Pythonリクエストまたはコマンドwgetを使用して、ブラウザーの訪問を偽装するにはどうすればよいですか? http://www.ichangtou.com/#company:data_000008.html

4
pythonはファイルのアップロードを要求します
Pythonリクエストライブラリを使用してファイルをアップロードする簡単なタスクを実行しています。私はスタックオーバーフローを検索しましたが、誰も同じ問題を抱えているようには見えませんでした。つまり、ファイルがサーバーによって受信されないということです。 import requests url='http://nesssi.cacr.caltech.edu/cgi-bin/getmulticonedb_release2.cgi/post' files={'files': open('file.txt','rb')} values={'upload_file' : 'file.txt' , 'DB':'photcat' , 'OUT':'csv' , 'SHORT':'short'} r=requests.post(url,files=files,data=values) 「upload_file」キーワードの値にファイル名を入力します。空白のままにすると、 Error - You must select a file to upload! そして今私は得る File file.txt of size bytes is uploaded successfully! Query service results: There were 0 lines. これは、ファイルが空の場合にのみ表示されます。そのため、ファイルを正常に送信する方法に悩まされています。このWebサイトにアクセスしてフォームに手動で入力すると、一致したオブジェクトの素晴らしいリストが返されるため、ファイルが機能することはわかっています。すべてのヒントに本当に感謝します。 関連する他のいくつかのスレッド(ただし、私の問題には答えていません): PythonスクリプトからPOSTを使用してファイルを送信する http://docs.python-requests.org/en/latest/user/quickstart/#response-content リクエストを使用してファイルをアップロードし、追加のデータを送信する http://docs.python-requests.org/en/latest/user/advanced/#body-content-workflow

2
「コンテンツ」と「テキスト」の違いは何ですか
私は素晴らしいPythonリクエストライブラリを使用しています。すばらしいドキュメントには、理由を説明せずに何かを行う方法の多くの例があることに気づきました。例えば、両方との例として示しているか、サーバーの応答を取得します。しかし、これらのプロパティの機能はどこで説明されていますか?たとえば、いつどちらを選択すればよいですか?thar がunicodeオブジェクトを返すことが時々あります。テキスト以外の応答では違いがあると思います。しかし、これはすべてどこに文書化されていますか?リンクされたドキュメントには次のように記載されています。r.textr.contentr.text 非テキスト要求の場合、バイトとして応答本文にアクセスすることもできます。 しかし、続いてテキスト応答の例を示します!非テキスト要求はHTTPでは意味をなさないため、上記の引用はのnon-text responses代わりに言うことを意味していると思いnon-text requestsます。 つまり、Pythonリクエストサイトの(優れた)チュートリアルとは対照的に、ライブラリの適切なドキュメントはどこにありますか?

8
Pythonリクエストと永続的なセッション
私はリクエストモジュール(Python 2.5でバージョン0.10.0)を使用しています。Webサイトのログインフォームにデータを送信してセッションキーを取得する方法を理解しましたが、後続のリクエストでこのセッションキーを使用する明確な方法がわかりません。誰かが以下のコードの省略記号を記入したり、別のアプローチを提案したりできますか? >>> import requests >>> login_data = {'formPosted':'1', 'login_email':'me@example.com', 'password':'pw'} >>> r = requests.post('https://localhost/login.py', login_data) >>> >>> r.text u'You are being redirected <a href="profilePage?_ck=1349394964">here</a>' >>> r.cookies {'session_id_myapp': '127-0-0-1-825ff22a-6ed1-453b-aebc-5d3cf2987065'} >>> >>> r2 = requests.get('https://localhost/profile_data.json', ...)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.