http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 13041|回复: 6

[其他] 从一个页面获取cookie,用于post数据到另一个页面,cookie怎么处理?

[复制链接]
发表于 2013-11-2 22:30:20 | 显示全部楼层 |阅读模式
本帖最后由 AppleAir 于 2013-11-3 14:18 编辑

(1)获取cookie与post接收数据不是同一个页面,需要先访问页面A,客户端产生cookie后(get方式),才能对页面B post数据,若直接进入页面B,因该页面不产生cookie,无法post。

(2)如何实现不断地通过页面A获取cookie-带该cookie post数据到页面B-清除cookie,对于这种获取cookie和post数据页面不相同的,不知道该怎么处理!



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2013-11-3 14:37:44 | 显示全部楼层
站长的类中可以传过去。
 楼主| 发表于 2013-11-3 14:53:44 | 显示全部楼层
cload 发表于 2013-11-3 14:37
站长的类中可以传过去。

看过了,还是不会啊。可否帮我拟一下
发表于 2013-11-3 15:15:31 | 显示全部楼层
AppleAir 发表于 2013-11-3 14:53
看过了,还是不会啊。可否帮我拟一下

具体问题具体分析,单纯从你给的(1)、(2)两条内容,没人能帮得了你啊。
 楼主| 发表于 2013-11-3 15:41:03 | 显示全部楼层
本帖最后由 AppleAir 于 2013-11-4 05:52 编辑
cload 发表于 2013-11-3 15:15
具体问题具体分析,单纯从你给的(1)、(2)两条内容,没人能帮得了你啊。

请帮我改正吧![code=csharp]using System;using System.Data;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;

namespace AutoVote
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public void Post(string urlA, string urlB, string PostData)
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(urlA);
            CookieContainer c = new CookieContainer();
            req.CookieContainer = c;
            req.GetResponse();
            UTF8Encoding encoding = new UTF8Encoding();
            byte[] data = encoding.GetBytes(PostData);
            HttpWebRequest PostRequest = (HttpWebRequest)WebRequest.Create(urlB);
            PostRequest.Method = "POST";
            PostRequest.ContentType = "application/x-www-form-urlencoded";
            PostRequest.ContentLength = PostData.Length;
            PostRequest.Referer = "urlReferer";
            //获取Post数据流
            Stream newStream = PostRequest.GetRequestStream();
            StreamWriter myStreamWriter = new StreamWriter(newStream, Encoding.Default);
            //把数据写入HttpWebRequest的Request流  
            newStream.Write(data, 0, data.Length);
            //关闭打开对象     
            myStreamWriter.Close();
            newStream.Close();
            //新建一个HttpWebResponse
            HttpWebResponse PostResponse = (HttpWebResponse)PostRequest.GetResponse();
            //StreamReader reader = new StreamReader(PostResponse.GetResponseStream(), Encoding.Default);
            //string content = reader.ReadToEnd();
        }
        private void button1_Click(object sender, EventArgs e)//投票 按钮
        {
            Post("http://urlA.php", "http://urlB.php", "cid=211");
        }
    }
}[/code]
 楼主| 发表于 2013-11-4 05:52:27 | 显示全部楼层
求高人
回复

使用道具 举报

发表于 2013-11-4 08:04:23 | 显示全部楼层
[code=csharp]  HttpHelper http = new HttpHelper();
            HttpItem item = new HttpItem() { URL = "a页面" };
            HttpResult result = http.GetHtml(item);

            http = new HttpHelper();
            item = new HttpItem()
            {
                URL = "b页面",
                CookieCollection = result.CookieCollection
            };
            result = http.GetHtml(item);[/code]
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-23 10:55

© 2014-2021

快速回复 返回顶部 返回列表