Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何发送对httpwebrequest的Web抓取响应_Php_Cookies_Web Scraping_Httpwebrequest_Keep Alive - Fatal编程技术网

Php 如何发送对httpwebrequest的Web抓取响应

Php 如何发送对httpwebrequest的Web抓取响应,php,cookies,web-scraping,httpwebrequest,keep-alive,Php,Cookies,Web Scraping,Httpwebrequest,Keep Alive,您好,我试图从网页上抓取数据,但我的问题是: 当我使用httpwebrequestserver连接到服务器时,将标题设置为Connection:Keep-Alive,然后请求加载验证码网页(在真实网页中,使用ajax加载验证码),然后在解决验证码后返回上一个请求的答案,最后加载数据 webpage -> captcha -> Solve -> Back to first web page -> show data 我该怎么做? 使用webrequest向网页发送请求

您好,我试图从网页上抓取数据,但我的问题是:
当我使用
httpwebrequest
server连接到服务器时,将标题设置为
Connection:Keep-Alive
,然后请求加载验证码网页(在真实网页中,使用
ajax
加载验证码),然后在解决验证码后返回上一个请求的答案,最后加载数据

webpage -> captcha -> Solve -> Back to first web page -> show data

我该怎么做?

  • 使用
    webrequest
    向网页发送请求
  • 请求中获取
    cookie
    信息
  • 加载
    captcha页面
    并获取
    catpcha图片
  • 发送验证码pic
    到其他站点,以
    解决该问题,并
    获取验证码
    回答
  • 使用
    webrequest
    获取cookie和会话发送
    captcha应答
    id
  • 使用
    cookie和会话id发送
    新的webrequest
    ,以便
    加载数据
而且总是->失败,我想这是因为对于
连接:保持活动状态
,我该如何解决这个问题呢?
而且,当我尝试在webbrowse中加载页面时,我不知道为什么,但在任何浏览器控件中,页面都无法正确加载,因此我无法使用浏览器

更新
我的问题:

如何在
GetResponse()
之后将答案(再次发布数据)发送到
httpwebrequest
,并使其保持在线(不使用新连接)

如果
保持活动状态有问题,请尝试禁用它:


如果
保持活动状态
有问题,请尝试禁用它:


请试着描述一个你无法解决的问题。例如,如何在没有
保持活动状态
属性的情况下获得连接。看看好的,更新了!现在你怎么想?请试着描述一个你不能解决的问题。例如,如何在没有
保持活动状态
属性的情况下获得连接。看看好的,更新了!现在你觉得呢?谢谢你的回答,但是如果你理解我的问题,你知道我所有的问题都是从httpwebreq断开连接,然后打开另一个,所以我认为这是行不通的,你认为呢?谢谢你的回答,但是如果你理解我的问题,你知道我所有的问题都是从httpwebreq断开连接,然后打开另一个,所以我认为这不是工作,你认为呢?
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://www.contoso.com");

req.KeepAlive = false;