javascript - python 解析 .js 页面

标签 javascript python parsing

我有一个网页http://timetable.ait.ie/js/filter.js我真的需要解析这个页面。过去几天我一直在使用 BeautifulSoup 来解析 html 页面,我真的明白我在做什么,但这个 .js 文件快要杀了我。

目前我正在使用以下代码:

import urllib
page = urllib.urlopen("http://timetable.ait.ie/js/filter.js")
pageInfo = page.read()

它返回一个字符串,其中包含整个文件的 18283 行代码。在代码中,我试图将员工姓名放在底部,有一个数组:

staffarray[373][0] = "BRADY, DAMIEN";
staffarray[373][1] = "SCI";
staffarray[373][2] = "BRADY001608";

我需要 [0] 和 [1] 中的值,然后使用这些值构建一个数据库,以便稍后引用。

我已尝试使用正则表达式来查找 Staffarray,但尝试获取此信息时我感到非常沮丧。有谁可以帮助我吗?

最佳答案

如果您对正则表达式有问题,请使用标准字符串函数和切片。

首先将代码分成几行,然后搜索 staffarray[[0][1]。最后使用切片。

import urllib

req = urllib.urlopen("http://timetable.ait.ie/js/filter.js")
lines = req.read().split('\n')

for x in lines:
    if 'staffarray[' in x:
        if '[0] = ' in x:
            start = x.find('"')+1
            end = -3
            print '0', x[start:end]
        elif '[1] = ' in x:
            start = x.find('"')+1
            end = -3
            print '1', x[start:end]

关于javascript - python 解析 .js 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40558493/

相关文章:

javascript - 使用动态创建的输入字段插入多条记录

javascript - 我可以使用 javascript 将 onClick 粘贴到输入字段中吗

python - 将水平线添加到 Dash-Plotly Python 仪表板

java - 治愈 'The string "- -"is not permitted within comments.' 异常?

python - 为什么 readlines() 读取的内容比 sizehint 多得多?

Javascript 矩阵乘以标量

javascript - 为什么在通过 javascript 添加时 css 转换会回到原来的位置?

当参数不在选项后面时,python getopt 模块会引发错误

python - 庞大的 Django 项目

python - 使用 dpkt 解析 ip 地址