2017-06-19 6 views
1

リクエストlibでウェブサイトのコンテンツを取得しようとしています。 私は私のURLにリクエストのエスケープをデコードしないようにするには?

import requests 

session = requests.Session() 
profile_id=321321 
user_profile_url = 'http://nodomain.com/?%6Dodule=' + str(profile_id) 
user_profile = session.get(user_profile_url) 
print(user_profile.text) 

は、どのように私はmに戻す%6Dをデコード要求せずにこれを送信することができます(m%6Dなど)1つの符号化文字を使用する必要がありますか?

+1

を参照してください。また、別のユーザーとの投稿あなたの質問、これますか? https://stackoverflow.com/questions/44630718/ –

答えて

2

のURL

http://nodomain.com/?%6Dodule=321321 
http://nodomain.com/?module=321321 

あなたは、文字「M」をエンコードするかどうかは関係ありませんRFC 3986によると等価です。

https://tools.ietf.org/html/rfc3986#section-6.2.2.2

+0

はい、ただし、一部のウェブサイトで何らかの理由で別のウェブサイトを処理する場合があります。 – Artyer

+2

その後、これらのウェブサイトは、あなたが持っているようなあらゆる種類の問題を引き起こすRFCに違反しています。クライアントが不必要に "m"文字をエンコードするように変更された場合でも、中間コンポーネント(プロキシ、リバースプロキシ、Webサーバーモジュールなど)は、通常は開発者)、ユーザーまたはサーバーの管理者。 –

+0

私はちょうど "そのまま"要求を送信したいです。 –

関連する問題