【问题标题】:Web Scraping and Mixed Content网页抓取和混合内容
【发布时间】:2016-03-29 21:07:33
【问题描述】:

我正在尝试使用 Polymer 创建一个网站,为梦幻足球运动员提供一些实用程序。这一挑战的一部分是导入成员的联赛并对其进行一些分析。

我的网站是安全的 (HTTPS)。包含会员联赛信息的网站是不安全的 (HTTP)。每当我尝试从提供的网站上抓取数据时,都会收到此错误:

混合内容:“https://www.mywebsite.com”处的页面通过 HTTPS 加载,但请求了不安全的 HTML 导入“http://www.theirwebsite.com”。此请求已被阻止;内容必须通过 HTTPS 提供。

我在互联网上搜索,试图找到一种方法从他们的网站上抓取团队数据,以便我可以最终操纵这些数据。

鉴于我使用的是 Polymer,有什么方法可以访问不安全网站上的数据?

【问题讨论】:

    标签: javascript xmlhttprequest polymer mixed


    【解决方案1】:

    如果您的网站是通过 HTTPS 加载的,您将能够在客户端(即在浏览器中,在 JavaScript 中)通过 HTTP 请求网页。您对此无能为力。

    一种选择是让后端(在服务器端,例如 PHP 或 NodeJS)进行抓取并将结果返回给您的客户端应用程序。

    如果您更喜欢在客户端进行处理,另一种选择可能更简单,即让您的服务器代理您的请求并将结果发回给您。例如,如果你想访问http://example.com,你可以有一个脚本proxy.php,你可以在你的JavaScript 代码中使用URL https://yourwebsite.com/proxy.php?url=http%3A%2F%2Fexample.com(1) 来调用它。该脚本将简单地加载网站并将其 HTML 代码返回给您。 (例如,如果您想使用 PHP 执行此操作,请参见 cURL,如果您更喜欢 Node,请参见 request。)

    (1) %3A 对应一个 url 编码的斜杠

    【讨论】:

      猜你喜欢
      • 2010-10-09
      • 2019-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多