English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python3urllib.parseの常用関数の要約(urlencode、quote、quote_plus、unquote、unquote_plusなど)

本文实例讲述了Python3的urllib.parse常用函数。分享给大家供大家参考,具体如下:

1、获取url参数

>>> from urllib import parse
>>> url = r'https://docs.python.org/3.5/search.html#63;q=parse&check_keywords=yes&area=default'
>>> parseResult = parse.urlparse(url)
>>> parseResult
ParseResult(scheme='https', netloc='docs.python.org', path='/3.5/search.html', params='', query='q=parse&check_keywords=yes&area=default', fragment='')
>>> param_dict = parse.parse_qs(parseResult.query)
>>> param_dict
{'q': ['parse'], 'check_keywords': ['yes'], 'area': ['default']}
>>> q = param_dict['q'][0]
>>> q
'parse'
#注意:加号会被解码,可能有时并不是我们想要的
>>> parse.parse_qs('proxy=183.222.102.178:8080&task=XXXXX|5-3+2'])
{'proxy': ['183.222.102.178:8080'], 'task': ['XXXXX|5-3 2']}

2、urlencode

>>> from urllib import parse
>>> query = {
  'name': 'walker',
  'age': 99,
  }
>>> parse.urlencode(query)
'name=walker&age=99

3、quote/quote_plus

>>> from urllib import parse
>>> parse.quote('a&b/c')  #スラッシュをエンコードしない
'a%26b/c'
>>> parse.quote_plus('a&b/c')  #スラッシュをエンコード
'a%26b%2Fc'

4、unquote/unquote_plus

from urllib import parse
>>> parse.unquote('1+2
1+2
>>> parse.unquote('1+2)  #加号をスペースにデコード
1 2

もしまだurldecodeがなぜないかを尋ねたい場合は、例をもう一度示します1五回見ます。^_^

Pythonに関連する内容に興味がある場合は、以下の特集をチェックしてください:《Python URL操作技術の要約》、《Python画像操作技術の要約》、《Pythonデータ構造とアルゴリズムの教程》、《Python Socketプログラミング技術の要約》、《Python関数の使用技術の要約》、《Python文字列操作の総合》、《Pythonの初級と上級の经典教程》および《Pythonファイルとディレクトリ操作の技術の総合》

この記事で述べたことが皆様のPythonプログラム設計に役立つことを願っています。

声明:この記事の内容はインターネットから収集され、著作権者に帰属します。インターネットユーザーによって自発的に提供され、アップロードされました。このサイトは所有権を持ちません。人工的な編集は行われていません。また、関連する法的責任を負いません。著作権侵害が疑われる内容がある場合は、以下のメールアドレスまでご連絡ください:notice#oldtoolbag.com(メールを送信する際、#を@に置き換えてください。報告を行い、関連する証拠を提供してください。一旦確認がとりあえず、このサイトは即座に侵害される可能性のある内容を削除します。)

おすすめ