苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

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

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

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

查看: 13283|回复: 19

[其他] 抓取网页上swf的数据如何转换成字符串

[复制链接]
发表于 2013-9-5 15:46:10 | 显示全部楼层 |阅读模式
比如链接是TxtEgis.swf?T=dqum&AS=0这样数据如何转换成字符串,直接用httphelper 获取是乱码。苏飞大神来看下!


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
 楼主| 发表于 2013-9-5 17:31:13 | 显示全部楼层
这上面地址的swf文件是获取到是一个用户名!谁知道如何获取到。。苏飞大神快来呀!
发表于 2013-9-5 17:58:23 | 显示全部楼层
贴下你的代码看看
 楼主| 发表于 2013-9-5 20:20:56 | 显示全部楼层
站长苏飞 发表于 2013-9-5 17:58
贴下你的代码看看

hi.URL = GDPublicSource.URL + "/TxtEgis.swf?T=" + Name.Split(',')[0] + "&AS=" + Name.Split(',')[1];  后面的不知道如何获取了。现在找到了swf路径,不知道如何返回里面的值。直接在网页上打开就能看到用户名。
 楼主| 发表于 2013-9-6 13:03:25 | 显示全部楼层
站长苏飞 发表于 2013-9-5 17:58
贴下你的代码看看

hi.URL = GDPublicSource.URL + "/TxtEgis.swf?T=" + Name.Split(',')[0] + "&AS=" + Name.Split(',')[1];
                    hi.ResultType = ResultType.Byte;
                    byte[] UserName = hh.GetHtml(hi).ResultByte;
转换成字符流后如何让他转义会字符串呢?是swf文件
发表于 2013-9-6 13:59:17 | 显示全部楼层
string s = Encoding.UTF8.GetString(byte);
 楼主| 发表于 2013-9-6 14:21:09 | 显示全部楼层
站长苏飞 发表于 2013-9-6 13:59
string s = Encoding.UTF8.GetString(byte);

CWS� 得到乱码了。。这个是swf文件。里面是一个用户名。
 楼主| 发表于 2013-9-6 17:46:18 | 显示全部楼层
站长苏飞 发表于 2013-9-6 13:59
string s = Encoding.UTF8.GetString(byte);

有解决方案吗?始终解决不了。
发表于 2013-9-6 20:49:28 | 显示全部楼层
你不提供代码帮不了你
 楼主| 发表于 2013-9-6 21:33:50 | 显示全部楼层
站长苏飞 发表于 2013-9-6 13:59
string s = Encoding.UTF8.GetString(byte);

ArrayList NameList = new ArrayList();
            HttpItem hi = new HttpItem();
            hi.URL = GDPublicSource.URL + "/Account_List.aspx?MT=5&AVID=" + GDPublicSource.AVID;
            hi.Cookie = Command.GetCookies(GDPublicSource.URL);
            string res = hh.GetHtml(hi).Html;
            MatchCollection mxtr = Command.GetAllValue(res, "<tr class=\"t_list_tr_0\"", "</tr>");
            foreach (Match m in mxtr)
            {
                string Name = Command.GetValue(m.Value, " <td class=\"f_left TD_r\">", "</td>");
                Name = Command.GetValue(Name, "sTE", ";");
                Name = Name.Replace(")", "").Replace("(", "").Replace("'", "");
                string UID = Command.GetValue(m.Value, "AVID=" + GDPublicSource.AVID + "&ID=", "'");
                if (Name != "" && Name != null)
                {
                    hi.URL = GDPublicSource.URL + "/TxtEgis.swf?T=" + Name.Split(',')[0] + "&AS=" + Name.Split(',')[1];
                    hi.ResultType = ResultType.Byte;
                    byte[] UserName = hh.GetHtml(hi).ResultByte;
                    string s =  Encoding.UTF8.GetString(UserName);
                }
                if (UID != "" && UID != null && UID != PublicSource.UVID)
                {
                    NameList.Add(UID);
                }
            }
            return NameList;
s 返回值是乱码!如何解析出正确的值。
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

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

GMT+8, 2024-12-28 10:41

© 2014-2021

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