现在有个需求,是用HttpWebRequest请求抓取网站。要做成webservice;抓取页面时要保存cookie和各个页面中的隐藏域的值;小弟目前的做法是每个客户端连接到webservice时都要提交一个随机的唯一标识,然后创建一个静态的字典,字典里面根据客户端传来的key创建一个CookieContainer,然后后续的模拟操作就根据key读取字典里的CookieContainer然后提交。页面隐藏域的值也是用key加变量名保存; 但是我觉得如果使用这个程序的人多了这个字典里保存的东西就太多了,怎么也不清楚在什么时候删除字典中的cookie和变量;各路大侠给个好点的思路吧~~
意思是通过你的程序访问别人的网站吗?直接用Socket转发报文是最好的
有点想不明白,,,麻烦能详细点吗。。。?谢谢。。
@咦?: 你要实现的功能是怎么样的,描述的不清楚
@吴瑞祥: 就是创建一个webservice 这个webservice的主要功能就是模拟提交、抓取网站的数据;程序调用这个webservice时会传过来一个唯一标识。通过这个标识我在webservice里面创建一个CookieContainer类并保存到静态的字典中。然后httpwebrequset类使用刚才创建的CookieContainer类进行模拟提交抓取数据;(要抓取目标网站的数据必须操作好几步,所以要使用Cookie),还有页面中的隐藏域的值也要保存,提交的时候需要。。
@吴瑞祥: 加了
保存在客户端行不行?
隐藏域的值保存在客户端可以,只不过有点麻烦。但是cookei怎么办?我httpwebrequest类是在webservice中使用的 这个cookie就没办法保存了。。。。