已解决,晚点请搞定的朋友发帖证明!200红包,改几行PHP…

42次阅读

共计 2687 个字符,预计需要花费 7 分钟才能阅读完成。

$url 变量会返回一个地址,该地址会 302 跳转到其他地址,已用 get_curl 和 get_headers 都取不到跳转后的地址,可能需要用 request 库模拟请求 $url 来取跳转后的地址,200 红包,确认能改的联系(没经验搜的代码就不用了)

已解决,晚点请 @zc035 朋友发帖证明,感谢这位朋友的帮助和信任,诚信无价!

PS:几十位坛友加我,感谢大家的帮忙!不过最终只有一位朋友搞定,确实比常规抓取难多了,因为原地址跳转前有验证头,所以其他朋友改的代码抓到的都是没跳转的原地址,中间还要分别 post 和 get 才行,加上我这边不方便泄漏地址和网站,难上加难,总结一句话:最终搞定的代码和其他朋友的代码或网上的代码差别很大,实现逻辑完全不同!

网友回复:

注册 这人也是逗。就算你给他写好了,他说不行也是他。

索罗斯 昨天加上了,找他要网站她不给,不给网站怎么写?搞笑的吧?

张麻子 昨天 100 没人干,涨价了,速度上兄弟们

三哥 不是没人干,是几个联系我的,都是搜的代码,我这里也搜到了相同代码,没实际经验,解决不了

darun2012 直接从 header 里取 location 就行

索罗斯 重赏之下必有勇夫 200 不行 2000 肯定行 **************************** * 出售:98 堂邀,1024 邀。Q 我!* 年付 10 元机场 1 元机场 三分机场 免费机场 一元机场 * ****************************

acm 用 get_headers  试过了,也用下面文章的方法取 location,就是取不到跳转地址:https://www.hetudt.com/384/

coobar 不如把 url 地址发出来,给大家试,有经验没经验也不太敢保证肯定可以

索罗斯 你早点发任务,我来接,哈哈

淡定定定哥 url 地址,我放到在线的重定向 ** 看了,302 跳转了 4 次,确认没问题,也把 url 地址发到其他各地的朋友访问,都正常访问和跳转,说明 url 没有限制 IP、header、user_agent

索罗斯 curl_getinfo 传入 CURLINFO_EFFECTIVE_URL 试过了吗

注册 把地址发出来看看啊   get_headers 这个函数性能有问题 我把它重新实现过一遍

注册 $url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); 上面这行试了,包括下面的参数都用了,也不行,可能 get_curl 解析不了这个 url(带有 ?= 参数的地址),要用 request 模拟访问才行:curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER,$header); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_USERAGENT,$user_agent); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, ‘GET’); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, false); curl_setopt($ch, CURLOPT_TIMEOUT, 20); curl_setopt($ch, CURLOPT_AUTOREFERER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_MAXREDIRS, 1); // 跳转 url 层级 // 下面两行为不验证证书和 HOST,建议在此前判断 URL 是否是 HTTPS curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 复制代码

woniu 嗯,同样的 url,我用 python requests 和 BeautifulSoup 两行代码就秒解决了,完全正确取到跳转后的地址

索罗斯 那可能是请求头的问题,你可以修改下请求相关的参数。

索罗斯 谢谢,前面有提到,把 url 地址发到其他各地的朋友访问,都正常访问和跳转,说明 url 没有限制 IP、header、user_agent

yanghao 可以用 chatGPT 把 py 代码转成 php 的,成功了记得 V 我 50

索罗斯 目标 URL 的重定向不是通过 header?是在 html 里做的?所以 header 获取不到重定向地址

西门堵车 gpt  直接 php 代码 就能输出 我好几个 程序都是 gpt 写的 感谢 互联网

Mr. 抓包看下跳转原理就知道怎么写了

XSProMax 钱不钱的没所谓,我就想看看哪个网站跳转这么厉害让人抓不到,发出来看看吧

注册 加你了,上 q

注册 发的地址好解决,获取后端判断 cookie 跳转也是有可能的,这样没法猜

du45273117 不会,因为在线查看了重定向,看到了 4 次 302 跳转完整流程,不会是写到 html 中,否则在线是看不到跳转的

yanghao 昨天加上了,找他要网站她不给,不给网站怎么写?搞笑的吧?

索罗斯 楼主那边不方便发网址,这还搞个球啊 倒是想和楼主打个赌,把网址发来,搞定了你出 400,搞不定我倒找 200

三哥 给源码几秒就给你搞定了至于么

zhujibuluo 不给网址 怎么给你写

Admire 这人也是逗。就算你给他写好了,他说不行也是他。

Southcat 我就想看看哪个网站跳转这么厉害让人抓不到

张麻子 帮顶一下

注册 我怀疑他想白 **

注册 支持作者,绑定

三哥 赶紧 255,等啥呢

飞燕 写这种代码不给网址?牛逼,真就全靠猜

HLYYL 就是怕你这种小肚鸡肠的朋友,一会叫搞定的那位发帖证明!

liugogal 就是怕你这种小肚鸡肠的朋友,一会叫搞定的那位发帖证明!

索罗斯 已解决,晚点请 @zc035 朋友发帖证明,感谢这位朋友的帮助和信任,诚信无价!PS:几十位坛友加我,感谢大家的帮忙!不过最终只有一位朋友搞定,确实比常规抓取难多了,因为原地址跳转前有验证头,所以其他朋友改的代码抓到的都是没跳转的原地址,中间还要分别 post 和 get 才行,加上我这边不方便泄漏地址和网站,难上加难,总结一句话:最终搞定的代码和其他朋友的代码或网上的代码差别很大,实现逻辑完全不同!

正文完
 0