如何在python中获取javascript内容

如何在python中获取javascript内容,javascript,python,html,python-2.7,beautifulsoup,Javascript,Python,Html,Python 2.7,Beautifulsoup,我有一个网站,其中存储了我想要获取的javascript数据。我怎么取 代码如下:- 我想从“var PlayerData”行获取数据。我想取这个东西:-“playerId”:“showsPlayer”(显然没有引号)。我该怎么做 我尝过美味的汤。我当前的脚本如下所示 q = requests.get('websitelink') soup = BeautifulSoup(q.text) searching = soup.findAll('script',{'type':'text/javas

我有一个网站,其中存储了我想要获取的javascript数据。我怎么取

代码如下:-

我想从“var PlayerData”行获取数据。我想取这个东西:-“playerId”:“showsPlayer”(显然没有引号)。我该怎么做

我尝过美味的汤。我当前的脚本如下所示

q = requests.get('websitelink')
soup = BeautifulSoup(q.text)

searching = soup.findAll('script',{'type':'text/javascript'})
for playerIdin searching:
  x = playerId.find_all('var playersData', limit=1)
  print x
我得到[]作为我的输出。我似乎无法解决我的问题。
请帮助男男女女:)

BeautifulSoup
只会帮助定位所需的
脚本
标记。然后,您将有多个选项:您可以使用javascript解析器提取所需的数据,如,或使用正则表达式:

import re

from bs4 import BeautifulSoup

page = """
<script type="text/javascript">
            var logged = true;
            var video_id = 59374;
            var item_type = 'official';

            var debug = false;
            var baseUrl = 'http://www.example.com';
            var base_url = 'http://www.example.com/';
            var assetsBaseUrl = 'http://www.example.com/assets';
            var apiBaseUrl = 'http://www.example.com/common';
            var playersData = [{"playerId":"showsPlayer","userId":true,"solution":"flash","playlist":[{"itemId":"5090","itemAK":"Movie"}]];
</script><script type="text/javascript" >
"""
soup = BeautifulSoup(page)

pattern = re.compile(r'"playerId":"(.*?)"', re.MULTILINE | re.DOTALL)
script = soup.find("script", text=pattern)

print pattern.search(script.text).group(1)
showsPlayer