2017-05-15 37 views
1

当我查看页面源时,我试图使用BeautifulSoup从网站中提取以下数据,但我无法使用汤来找到它,所以我正在寻找一些指导。使用BeautifulSoup从页面源提取数据值

当我查看源代码时,页面显示以下文本。

var = 'SynchronizerToken'; 
var = 'dd3a0c31e365c458d2d3e68e3c98f772bd2103eccf381'; 

我使用的代码现在是

SynchronizerToken = soup.find_all( “VAR SYNCHRONIZER_TOKEN_VALUE”)

建议表示赞赏,再次感谢!

回答

1

使用正则表达式捕获组:

var SYNCHRONIZER_TOKEN_VALUE = '(.+?)' 

,您可以使用获得捕获组<MatchObject>.group(1)


import re 

html = ''' 
var SYNCHRONIZER_TOKEN_NAME = 'SynchronizerToken'; 
var SYNCHRONIZER_TOKEN_VALUE = 'dd3a0c31e365c458d2d3e68e3c98f772bd2103eccf38163e10ce039c2b70a61a'; 
''' 

token = None 
matched = re.search(r"var SYNCHRONIZER_TOKEN_VALUE = '(.+?)'", html) 
if matched: 
    token = matched.group(1) 

# token => 'dd3a0c31e365c458d2d3e68e3c98f772bd2103eccf38163e10ce039c2b70a61a' 
0

您可以使用下面的正则表达式模式来查找需要的值:

SYNCHRONIZER_TOKEN_VALUE = \'(.*?)\' 

Regex101

相关问题