如何从受密码保护的登录

时间:2016-06-04 14:34:57

标签: php

问题

我希望能够登录我的帐户,在登录我的帐户时从网站检索值,然后将其打印到网页。 特别是,我想检索我从Project Euler解决的问题数量,然后将其打印到我的网站。

现在,我知道如何从特定网页中检索值。

我的代码

免责声明:代码采用并改编自:get value from external webpage (php or java)

我有以下代码从网页中检索我想要的下一个值:

<?php

// Read the whole file.
$lines = file('https://projecteuler.net/progress');

// Go through every line ..
while ($line = array_shift($lines)) {

    // Stop when you find the label we're looking for.
    //NOTE: The word 'Solved' only exists on the web page when you are logged into an account.
    if (strpos($line, 'Solved') !== false) break;

}

// The next line has your value on it.
$line = array_shift($lines);

// Print the first word on the line.
$values = explode(' ', $line);
echo $values[0];

?>

此守则实际执行的内容

此代码将转至网页https://projecteuler.net/progress。但是,由于可以在不登录帐户的情况下访问此网页,因此它将从该网页检索值,而不是从登录时访问的网页。

基本上,有两个 /进度页面 - 一个用于登录时,另一个用于未登录时。

我希望能够在您登录帐户时访问/进度页面。我试过了:

我尝试过的事情

我尝试使用此链接中的信息: Reading information from a password protected site

没有成功。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

Project Euler网站在登录页面上有一个CAPTCHA。如果您想搜索,可以通过互联网详细记录绕过此问题的方法,但网站的所有者显然不希望自动访问,除了法律问题,我们通常不愿意帮助您违背网站的意愿# 39;所有者。

如果您想让浏览器转储一些数据,当您手动登录时,您可能需要查看GreaseMonkey脚本。