Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:regex解析URL组件_Python_Regex - Fatal编程技术网

Python:regex解析URL组件

Python:regex解析URL组件,python,regex,Python,Regex,假设这是我的URL字符串: 我只想解析访问令牌部分“xxxxxx”)” 这就是我到目前为止所做的: from urllib.parse import urlparse strr = "https://stackexchange.com/oauth/login_success/#access_token=xxxxxx))&expires=86400" o = urlparse(strr) print(o.fragment) 我得到的结果是: 访问权(令牌=xxxxxx))&expi

假设这是我的URL字符串:

我只想解析访问令牌部分“xxxxxx”)”

这就是我到目前为止所做的:

from urllib.parse import urlparse
strr = "https://stackexchange.com/oauth/login_success/#access_token=xxxxxx))&expires=86400"

o = urlparse(strr)

print(o.fragment)
我得到的结果是:

访问权(令牌=xxxxxx))&expires=86400


从这里获得“xxxxxx”)部件的最佳方式是什么?使用regex?

这里有一种方法可以做到这一点-首先使用
urlparse()
,然后在
片段上调用
parseqs()

>>> from urllib.parse import parse_qs, urlparse
>>> 
>>> strr = "https://stackexchange.com/oauth/login_success/#access_token=xxxxxx))&expires=86400"
>>> o = parse_qs(urlparse(strr).fragment)
>>> print(o['access_token'])
['xxxxxx))']

可以使用正则表达式:

(?<=access_token=)[^\)]*

(?
pydoc3 urllib.parse.parse_qs