社区
基础编程
帖子详情
我想通过web程序登录一个网站,然后获取里面页面的数据,可以么?谢谢!
iStringTheory
2004-08-25 09:17:06
具体是这样的:
登 录
我的程序-------->第三方web网站(需要用户名、密码登录)------>获取目标网站内部页面的数据
这整个过程都是通过程序完成的,请问能否可行?谢谢!
...全文
641
42
打赏
收藏
我想通过web程序登录一个网站,然后获取里面页面的数据,可以么?谢谢!
具体是这样的: 登 录 我的程序-------->第三方web网站(需要用户名、密码登录)------>获取目标网站内部页面的数据 这整个过程都是通过程序完成的,请问能否可行?谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
42 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yangzixp
2004-09-04
打赏
举报
回复
要获取session name很容易。随便在网上down一个HTTP监控软件,监控一次你正常登陆该站的过程就可以了。
iStringTheory
2004-08-28
打赏
举报
回复
谢谢~~~
piner
2004-08-27
打赏
举报
回复
以前写的一个class,可以根据自己的需要做调试
piner
2004-08-27
打赏
举报
回复
<?php
class curl
{
var $ch = 0;
var $time = 3; //尝试判断URL正确性次数
var $urlRight = false; //URL是否正确
var $content; //官方返回信息
var $errMsg = ""; //返回的错误信息
// 构造函数
function curl()
{
$this->init();
}
// 初始化curl
function init()
{
$this->ch = curl_init();
}
// configure protocol
function get_Protocol($prot)
{
$protocolArr = explode(":", $prot);
$protocol = strtolower($protocolArr[0]);
return $protocol;
}
// 设置次数
function setTimes($times) {
$this->time = ($times > 0) ? $times : $this->time;
}
// 获取页面
function getPage($url, $header = 0) {
if (! $this->ch)
{
$this->errMsg = "初始化对象失败!";
return;
}
if ($this->checkURL($url) != 1)
{
$this->errMsg = "无效的URL路径!";
return;
}
curl_setopt($this->ch, CURLOPT_URL, $url);
curl_setopt($this->ch, CURLOPT_POST, 1);
if ($this->get_Protocol($url) == 'https')
{
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, FALSE);
}
if($header) {
curl_setopt($this->ch, CURLOPT_VERBOSE, 1);
curl_setopt($this->ch, CURLOPT_HEADER, 1);
}
else {
curl_setopt($this->ch, CURLOPT_VERBOSE, 0);
curl_setopt($this->ch, CURLOPT_HEADER, 0);
}
curl_setopt($this->ch, CURLOPT_COOKIEJAR, "-");
curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_TIMEOUT, 180);
return curl_exec($this->ch);
}
// 登录
function login($url, $fields, $refererURL=null)
{
if (! $this->ch)
{
$this->errMsg = "初始化对象失败!";
return;
}
/*
if ($this->checkURL($url) != 1)
{
$this->errMsg = "无效的URL路径!";
return;
}
*/
if( $refererURL )
{
curl_setopt($this->ch, CURLOPT_REFERER, $refererURL);
}
curl_setopt($this->ch, CURLOPT_URL, $url);
curl_setopt($this->ch, CURLOPT_POST, 1);
if ($this->get_Protocol($url) == 'https')
{
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, FALSE);
}
curl_setopt($this->ch, CURLOPT_COOKIEJAR, "-");
curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($this->ch, CURLOPT_TIMEOUT, 180);
$this-> content = curl_exec($this->ch);
// return $content;
}
// 退出
function logout($url, $referer_url=null)
{
if (! $this->ch)
{
$this->errMsg = "初始化对象失败!";
return;
}
if( $referer_url )
{
curl_setopt($this->ch, CURLOPT_REFERER, $referer_url);
}
curl_setopt($this->ch, CURLOPT_URL, $url);
curl_setopt($this->ch, CURLOPT_POST, 1);
if ($this->get_Protocol($url) == 'https')
{
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, FALSE);
}
curl_setopt($this->ch, CURLOPT_COOKIEJAR, "-");
curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_TIMEOUT, 180);
$this-> content = curl_exec($this->ch);
// return $content;
}
function getContent()
{
return $this->content; // 官方返回的HTML
}
// close curl
function close()
{
if ($this->ch)
{
curl_close($this->ch);
}
}
}
$curl = new curl;
$url = "http://www.test.com/login.php"; //form 的action
$fields = "username=test&password=test"; //用户名和密码
$curl-> login($url, $fields);
$content = getContent();
echo $content;
?>
iStringTheory
2004-08-27
打赏
举报
回复
自己顶~
surfchen
2004-08-26
打赏
举报
回复
OCR不一定准确的说。。呵呵
fire214
2004-08-26
打赏
举报
回复
对于 如输入验证码的功能,也可以利用模拟键盘来解决,让计算机自己切换到,如清华紫光图像识别就可以把相应的数字、符号提取出来,一切你自己需要操作的,模拟键盘都可以做到,只要自己有一套规矩就好了!
fire214
2004-08-26
打赏
举报
回复
关于这个问题,我研究了很长时间,无非就是让自己获取对方网站的信息,我也考虑了很多种办法,但是由于显示出来的方式不同,有的数据是静态的,有的数据是动态的,有的是数据库里的,弄得乱七八糟,最后我选用了用delphi采取模拟键盘的方法,最愚蠢的 ctrl+a +c +v 的方式先把对方的数据资料都调进我自己的数据库里,发现这个办法虽然笨,但是却无敌,也许你可以参照,目的达到了就好,其余的事情让计算机来做!
surfchen
2004-08-26
打赏
举报
回复
同意 Debian(乌鱼子)。。。。
zairwolfi
2004-08-26
打赏
举报
回复
验证码作为一个图片,不能通过程序分析象素得到它的数字么?我估计应该可以。
BiedySun
2004-08-26
打赏
举报
回复
主要是验证码问题。其实的都好说。
楼主的这个意思。其实极像网易通行证这样的东西来着。
你用HIDDEN来完成。
虚拟一次登陆,至于他用SESSION和COOKIE都无所谓的。因为服务器接到你虚拟信息后,会以为你已经成功进入 。
难点在于 abigfrog(千年精灵)(★JAVA★) 提出的难证码~!!!!
yzs1013
2004-08-26
打赏
举报
回复
用了session或指定了判断访问器类型的文件就无法通过其他方式能正常下载,socket或者curl都不例外
unixdotnet
2004-08-26
打赏
举报
回复
费话啦必须通过界面验证的东西不可能直接pass
yzs1013
2004-08-26
打赏
举报
回复
to liyujie2000(开心的鱼)
可能你漏了http://
<%
$fn=fopen("http://www.sohu.com","r");
$nr=fread($fn,500);
fclose($fn);
preg_match("/<title>(.*)<\/title>/",$nr,$nn);
echo $nn[1];
%>
结果:搜狐首页(我这里访问正常)
Debian
2004-08-26
打赏
举报
回复
拜托,你们都有没有头脑。
如果对方在服务器端应用了如输入验证码的功能,用什么都没戏。
iStringTheory
2004-08-26
打赏
举报
回复
curl怎么应对session验证?
iStringTheory
2004-08-26
打赏
举报
回复
好的,谢谢~
iStringTheory
2004-08-26
打赏
举报
回复
yangzixp(扬子.net):
可否告知什么软件获取网站的session name?是否只需一次获取?还是别的什么?
unixdotnet
2004-08-26
打赏
举报
回复
通过socket或者curl都可以
unixdotnet
2004-08-26
打赏
举报
回复
如果用户浏览器打开了cookie,那么session的传递是通过cookie的,所以你可以臆造,格式参照http协议,内容就像用flashget下载文件时程序里面的提示内容,以前phpx.com也讨论,可以去搜索看看.
加载更多回复(22)
TRINAMIC旗下的TMC5130和TMC5130步进电机测试deom
TRINAMIC旗下的TMC5130和TMC5130步进电机测试deom
基于ESP32的Modbus RTU/RS485与MQTT协议转换网关系统:实现工业自动化
数据
采集与远程监控
工业自动化领域中,物联网技术通过嵌入式系统实现设备互联。Modbus RTU协议基于RS485物理层进行串行通信,而MQTT协议则支持无线传输与云平台对接。ESP32微控制器常被用作网关设备,承担
数据
采集、协议转换及实时通信任务。该系统能够完成传感器
数据
采集、智能设备管理与远程监控功能,实现工业现场
数据
的整合与传输。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
【DBO三维路径规划】基于多策略改进的蜣螂算法MSDBO多无人机协同集群避障路径规划(目标函数:最低成本:路径、高度、威胁、转角)研究(Matlab代码实现)
内容概要:本文研究基于多策略改进的蜣螂优化算法(MSDBO)在多无人机协同集群三维环境下的避障路径规划问题,提出了一种以最低综合成本为目标的路径规划方法。目标函数综合考虑路径长度、飞行高度、环境威胁区域及飞行转角等关键因素,构建多维度代价模型,通过改进的蜣螂算法实现全局最优路径搜索。MSDBO算法引入多种优化策略,有效提升了原始蜣螂算法的收敛速度、全局搜索能力和避免陷入局部最优的能力。研究采用Matlab平台进行算法仿真与代码实现,验证了该方法在复杂三维空间中规划安全、高效、低能耗飞行路径的可行性与优越性,适用于多无人机系统的协同避障与航迹优化任务。; 适合人群:具备一定智能优化算法理论基础和Matlab编程能力,从事无人机路径规划、群体智能优化、自动控制、机器人导航等相关领域的科研人员、工程技术人员及研究生; 使用场景及目标:①解决多无人机在复杂三维动态环境中协同飞行的避障路径规划问题;②提升智能优化算法在航迹规划中的性能表现,降低飞行综合成本,实现安全避障、平滑航迹与高效导航的多重目标; 阅读建议:建议结合提供的Matlab代码进行仿真实验,深入理解MSDBO算法的改进机制与路径规划实现流程,可通过调整环境参数与权重系数进一步开展性能对比分析,并可将该方法迁移应用于其他群体智能优化与移动机器人路径规划场景。
三相交流异步电机模糊PID自适应控制【附说明文档】
内容概要:本文聚焦于三相交流异步电机的控制优化问题,提出一种基于模糊逻辑的PID自适应控制方法,旨在提升电机在复杂运行工况下的动态响应性能与抗干扰能力。通过Matlab仿真平台,系统阐述了模糊PID控制器的设计原理与实现过程,将模糊推理机制与传统PID控制有机结合,实现对比例、积分、微分参数的在线实时整定,有效应对电机系统固有的非线性、时变性等控制挑战。文档配套提供详细的说明材料,涵盖控制策略的构建思路、模糊规则库设计、隶属度函数选取及仿真模型搭建等关键环节,并通过仿真结果验证该方法在抑制超调、加快响应速度、增强系统鲁棒性方面的优越性能。; 适合人群:具备自动控制理论基础、电气工程及其自动化、机电一体化等相关专业的高年级本科生、研究生,以及从事电机驱动与控制领域研究的科研人员和技术开发者;熟悉Matlab/Simulink仿真环境者更适宜深入学习与实践。; 使用场景及目标:①应用于高性能交流电机驱动系统的设计与性能优化;②作为模糊控制与经典PID控制融合教学的典型案例;③服务于科研项目中对先进自适应控制算法的验证、对比与拓展研究;目标在于掌握模糊PID控制器的系统化设计流程,并具备将其迁移应用于其他非线性、时变系统的控制问题的能力。; 阅读建议:建议结合提供的Matlab代码与说明文档同步研读,重点剖析模糊规则制定逻辑、输入输出变量的模糊化处理及仿真模型的模块化构建,鼓励动手复现与调试,以深化对自适应控制机制与智能控制策略协同作用的理解。
统计分析软件SPAA-下载即用.zip
已经博主授权,源码转载自 https://pan.quark.cn/s/a4b39357ea24 一、课程信息 课程名:《Python统计与
数据
分析实战》 课程介绍 本课程结合Python进行统计与
数据
分析的原理讲解与实战,涵盖了绝大部分统计&
数据
分析模型,特别是当前比较主流的算法:参数估计、假设检验、线性回归、广义线性回归、非线性模型、Lasso、岭回归、广义可加模型、正交多项式模型、回归样条等;单因素和双因素方差分析;机器学习经常用到的主成分分析、因子分析、典型相关分析、聚类分析等;各种非参数统计模型,包括非参数统计推断、尺度推断、位置推断、列联表
数据
和属性
数据
分析、对数线性模型和分位回归模型、非参数核密度估计、非参数回归等。 全部模型和算法使用Python编程实现,实例驱动,聚焦实战,是成为高薪
数据
科学家和
数据
分析师的必备必学课程。 课程网址 全部课程视频在此处:B站网址 课程目录 第1章
数据
描述性分析 第2章 参数估计 第3章 假设检验 第4章 回归分析 第5章 方差分析 第6章 判别分析与聚类分析 第7章 主成分分析、因子分析与典型相关分析 第8章 非参数统计 注:详细内容见文末的思维导图。 适用人群: (1)准备毕业后从事统计与
数据
分析行业的大学毕业生或准毕业生。 尤其是需要转向从事计算机编程、
数据
分析和机器学习方面工作的毕业生,或者需要提升技能以寻找高薪酬工作的准毕业生等。 (2)公司或企事业单位内部有
数据
分析和统计分析需求的从业人员。 (3)大学和科研院所的硕、博士研究生、青年教师等,特别是在管理学和人文社会科学等专业有量化研究需求的研究生和教师等 (4)需要转行从事
数据
分析方面工作,或有技能提升需求的初入职场者。 学习收获: (1)全程保姆式教学,学习路径合...
基础编程
21,890
社区成员
140,342
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章