我正在构建一个Excel脚本,该脚本将绕过网站上的表单,并直接在URL中解析请求以生成所需的输出(然后将该数据拉入Excel(。
我一切正常,但解决方案的一部分是包含一个似乎是固定字符和可变字符组合的参数值。该网站使用 .do Java serverlet 文件进行服务器端请求。脚本显然对此进行了解码,并在执行之前查找某些内容。如果生成的代码中的任何值不同,则不会执行。
这里有三个例子。每个工作都成功。我该如何解码它,以便我可以创建自己的动态代码,而不是一遍又一遍地重复使用相同的 ID?
我的猜测是这需要一些基本转换吗?不确定是否可能,但代码中肯定有一个模式,至少对于第一个和最后几个字符:
1:H4sIAAAAAAAAAL2QTU_DMAyGf824VKrsdKvKwYeqHQIJbTAGO0wcQhq2SN1aJRkfUn48brsDMMQNbm9iW378BAQgERCQ8MxalStvmv1C2WoNjxS66p2WVm2jwhqvrZF976t-km3rRMwjsddv0sWb5mWU5BlwXdBIXExXOceki67Vyjwbda2l07cHbd-HNXHVcMuYdtpvm2rZFLKu-WNCh_1xRFf8zghO0Naup8rtxsWttHL3IOuDZmJBgCEhAQLCuMuTIac0Dxl9IQnn1Nqmyve82su6NK7lbTRcAFlPLwDTcRAMWRnnrVH-GwoeLZXHMjuI-tk_lzQY4JiSq2_kRttPJn7Uhv-uLaHZfLG8jIr5qpzOovvZ1fJ3mevTUzrBhEyIwITY4TEdMhrCB5_buH2_AgAA
阿拉伯数字:H4sIAAAAAAAAALWQTU8CMRCGfw1eNjZtF8hymEOziycjKERjiIfaHaHJwjZt8SPpj3d24aCinvT2ttPpPPMkwTnIJLgAcea9USbadndjfL3iD5C66gK1N5us9Dait7p_-4KP2rkgGbWwiK86sHX7PMhVwakuYSAvpneKYt7F4NDYJ2suUQe83qN_O4xhdUtPhrDFuGnrZVvqpqGLEex3xxas6VwAP0FbhZ5K-XVgTnu9vdXNHolYAhcpB8nFJA27PKIseRrDLBXwiSRNwPm2VjsaHXVT2eBoGhw24EVPT_-MZZIEWdsQvTXxC4o4WqqOZXKQ9b3_LulggOIYQjPXa_QfTHyrTfyVNnLhKozaNuFHYzncq2p2NZBlVrJszs4XS7Wc_q5ydbpIpxcE8QlOfCLv6Do4IhP8Hb4znrK-AgAA
3:H4sIAAAAAAAAAG2PS2vDMBCEf016KYiV7AT3sAeRNqdA6YP2EHpQpU0icCyxkvsA_fjKdi-F3mZ3ZplviwRAWSRIhCtmq232YXi07A7whmVyn8iwPV9v2Wdib-bsJ72bGJMS9URk-jJJnMLHqtEdVF_hSu3uXnWVzSRTJOuP3u7JJHoYib-XGuFCjbR4oXwO7jlsTd_XxRrH4feEXJ27f9AOaabSfEoiGjaXF9OPVIkVgiwNKlBQ2kmvF73B-9LhH5Jyg5GD00Otzqa_9SnWNlw-gG6mVyA3bVEV0vmU2dv8A8nXYOAyAQAA
这样做:
|100=1|101=0&rrcActionRcrd[0]=|100=Search+Criteria|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall|105=unspecific|108=0&rrcActionRcrd[0][searchArgs.paramValue]=
|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102=08|103=20164|204=District
你的第三个例子有意义吗?
这是第二个:
|100=2|101=1&rrcActionRcrd[0]=|100=Search+Criteria|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall|105=unspecific|108=0&rrcActionRcrd[0][searchArgs.paramValue]=|2=01|3=2019|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102=08|103=20162|204=district&rrcActionRcrd[1]=|100=District%3A+08|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall
|105=search|106=slPager.paramValue|108=0&rrcActionRcrd[1][searchArgs.paramValue]=|2=01|3=2019|4=01|5=2020|6=O|8=specificLease|9=dispDetails|10=0|102=08|103=20162|203=YADON%2C+C.+P.-STATE|204=district&rrcActionRcrd[1][slPager.paramValue]=|1=1|2=10|3=13|4=0|5=2|6=10
第一个:
|100=2|101=1&rrcActionRcrd[0]=|100=Search+Criteria|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall|105=unspecific|108=0&rrcActionRcrd[0][searchArgs.paramValue]=|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102=08|103=20164|204=district&rrcActionRcrd[1]=|100=District%3A+08|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall
|105=search|106=slPager.paramValue|108=0&rrcActionRcrd[1][searchArgs.paramValue]=|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102=08|103=20164|203=NORTH+COWDEN+UNIT|204=district&rrcActionRcrd[1][slPager.paramValue]=|1=1|2=10|3=1|4=0|5=1|6=10
您在这里拥有的是 Base64 编码的 gzip 流。因此,要解码,您需要将其解码为.gz,然后将其解压缩。这就是我所做的,这就是我是如何做到的:
我拿走了你的第一个编码块并将其保存到一个文件中。我对其他两个块做了同样的事情。转到 https://www.base64decode.org/并加载了第一个文件;下载了转换后的版本并使用.gz扩展名保存。对其他两个文件做了同样的事情。然后我用枪拉开了它们,得到了解码的结果。我确实对第一个和第二个块有一些问题,但这与它在页面中的显示方式有关。一旦我查看了页面的源代码并从那里复制它,我就没有问题了。
您将必须生成正确的格式,这应该很容易,然后您需要对其进行gzip然后对其进行编码。它会起作用。