手机

2017-08-28 63 views
1

我想这个从网站获取的数据从一个桌面(移动)获取数据:手机

$.get(wallpaperUrl, function(data) { 
    html = $(data).find(".photo").html(); 

    wallpaper.img = $(html).find("img").attr("src"); 
    $('#MainPanel').css('background-image', 'url(' + wallpaper.img + ')'); 
}); 

这在桌面上观看时,它的工作原理没有问题,但是当其运行在网站的移动版本上,由于移动视图没有包含网站的这部分内容,因此它完全混乱了。

有什么办法从移动网站上的桌面网站获取数据?我再次没有查看表格,我只是在抓取数据。我无法在移动网站上获得我想要的数据,我需要桌面网站。

+0

我猜你需要更改请求上的用户代理,这显然是不可能的:https://stackoverflow.com/问题/ 5771878/jquery-ajax-request-change-user-agent –

+0

什么是数据?真的不清楚你想要什么,以及移动设备上有什么“不”... – Salketer

+0

@Salketer,他正在抓取一个网站。该网站在从桌面查看时会显示某个元素,但不会显示在移动设备上。当他从移动设备上刮下时,无法找到该元素。 –

回答

0

有没有办法使一个AJAX请求的方式,使服务器认为你是一个不同的代理。根据请求者的代理服务器内容的所有网站不能被愚弄...

通常,虽然网站允许用户关注链接以查看桌面版本,您可以使用这些链接从移动版本获取桌面版本。其他人可能会检查一些特定的标题,但是您将无法创建适用于每个网站的通用功能。

你唯一的选择就是使用服务器端脚本,这样你就可以模拟你想要的任何浏览器代理。

而且,在报废之前,你确定没有其他方法从网站获取数据吗?现在有API的一切,或RSS至少...

+0

谢谢,刚刚意识到我可以在externalURL的末尾添加“?mode = desktop”,它会工作。我没有想过做RSS,但我会考虑这一点。 –