JSONP Python脚本
我最近在玩一个叫做HTML2Canvas的代码,链接在这里:https://github.com/niklasvh/html2canvas
这个工具是用JavaScript写的,可以把一个HTML页面转换成画布元素。
它使用一个代理来从远程网站获取HTML,像这样发起一个Ajax请求:
$.ajax({
data: {
xhr2:false,
url:urlParts.href
},
url: "http://html2canvas.appspot.com",
dataType: "jsonp",
success: function(html) {
当我请求yahoo.com作为示例网址时,结果是这样的:
http://html2canvas.appspot.com/?callback=jQuery162020564090818326575_1311846010895&xhr2=false&url=http%3A%2F%2Fwww.yahoo.com%2F&_=1311846201150
我想自己做一个JSONP代理,这样我就可以把我的代码指向它。不过问题是我不知道从哪里开始。
返回的JSONP(我不会全部复制)是这样的开头:
jQuery162020564090818326575_1311846010895("<!DOCTYPE html>\n<html lang=\"en-US\" class=\"y-fp-bg y-fp-pg-grad bkt701\" style=\
所以HTML内容被转义并包裹在一个回调函数里。
我想创建一个Python脚本,按照完全相同的方式工作,并生成完全相同的输出。
有没有人能给我指个方向,告诉我如何创建一个Python JSONP代理,生成类似的输出?其实不一定非要用Python,我只是提到它,因为我现在用的就是这个。
1 个回答
0
我把这个Python代理的源代码放到了https://github.com/niklasvh/html2canvas-proxy上。不过要注意,这个脚本可能会继续更新,更新后可能会导致代理无法正常工作。