问题描述
------------ 原始问题 ------------------
在我的启动脚本中,我试图在基于“ img”标签的“ src”属性的新URL上使用“ splash:go”。如何访问此“ src”相对URL并将其加入到start_url?
例如,假设img元素具有以下内容:
在这里,我尝试提取src属性并将其添加到start_url:
https://i2a.uslandrecords.com/ME/Cumberland/D/
我希望所有这些都在Splash脚本内。我需要在Splash内完成此操作,否则会丢失安全性/加密或其他内容-它会呈现“错误数据”而不是新网页。你有什么建议吗?
------------ 更新 ------------------
var = splash:evaljs("document.getElementById('ImageViewer1_docImage').src;")
splash:go(var)
但是,问题是这正在生成一条错误消息。我在快照中发现的只是一个带有以下消息的白页:
加载页面失败(框架加载因策略更改而中断)
Webkit错误#102
知道为什么吗?
解决方法
图像src属性正是您需要访问的URL,还是您需要将其附加到其他URL部分的问题标题所指出的内容?
如果是这种情况,您可以通过“ ..”来实现。
例如。:splash:go(base_url..var)-级联
,问题已解决:
这是解决方案。 GET请求被终止,因为在给定Webkit设置的情况下,它不知道如何用html渲染图像。如果在不呈现页面的情况下执行GET请求,则response.body将具有图像。
代码:
local response = splash:http_get(var)
return {
body = response.body
}