在Python中使用Beauty Soup从HTML中删除JavaScript变量

在Python中使用Beauty Soup从HTML中删除JavaScript变量,python,html,web-scraping,beautifulsoup,request,Python,Html,Web Scraping,Beautifulsoup,Request,在一个“获取”请求之后,我正在抓取一个网站的HTML。我基本上是想从网站上获得一些代币。我使用的是Beauty soup,因为这是我通常使用的,但我似乎不知道如何从html中获取javascript变量。标记在HTML中,如下所示: <script type="text/javascript"> var accessToken = "WaX2wWBb9fkp+qVQf6ECq9JcOZJnCL3Y/furfevohpk="; var ivString = "d2c5708bbcc6b

在一个“获取”请求之后,我正在抓取一个网站的HTML。我基本上是想从网站上获得一些代币。我使用的是Beauty soup,因为这是我通常使用的,但我似乎不知道如何从html中获取javascript变量。标记在HTML中,如下所示:

<script type="text/javascript">
var accessToken = "WaX2wWBb9fkp+qVQf6ECq9JcOZJnCL3Y/furfevohpk=";
var ivString = "d2c5708bbcc6b53c23af6d2cdab9f4ab";
var encryptedFpAccountId = "zk/5H7Iz0cNQPxPadMgvDw==";
var accessTokenCode = "0";
var nextPageName="signup-retail"

var accessToken=“WaX2wWBb9fkp+qVQf6ECq9JcOZJnCL3Y/furfevohpk=”;
var ivString=“d2c5708bbcc6b53c23af6d2cdab9f4ab”;
var encryptedFpAccountId=“zk/5H7Iz0cNQPxPadMgvDw=”;
var accessTokenCode=“0”;
var nextPageName=“注册零售”

我需要得到accessToken、ivString和encryptedFpAccountId的相等值。我应该如何处理这个问题?

使用Regex获取所需的变量

演示:

from bs4 import BeautifulSoup
import re
s = """<script type="text/javascript">
var accessToken = "WaX2wWBb9fkp+qVQf6ECq9JcOZJnCL3Y/furfevohpk=";
var ivString = "d2c5708bbcc6b53c23af6d2cdab9f4ab";
var encryptedFpAccountId = "zk/5H7Iz0cNQPxPadMgvDw==";
var accessTokenCode = "0";
var nextPageName="signup-retail
</script>"""

soup = BeautifulSoup(s, "html.parser")
script = soup.find("script")
accessToken = re.search('var accessToken = (?P<token>.*);', script.string)
if accessToken:
    print(accessToken.group('token'))
ivString = re.search('var ivString = (?P<ivString>.*);', script.string)
if ivString:
    print(ivString.group('ivString'))

encryptedFpAccountId = re.search('var encryptedFpAccountId = (?P<encryptedFpAccountId>.*);', script.string)
if encryptedFpAccountId:
    print(encryptedFpAccountId.group('encryptedFpAccountId'))
"WaX2wWBb9fkp+qVQf6ECq9JcOZJnCL3Y/furfevohpk="
"d2c5708bbcc6b53c23af6d2cdab9f4ab"
"zk/5H7Iz0cNQPxPadMgvDw=="