新技能get

俗话说“万事开头难”,前几天用java模拟登陆人人、微博、QQ空间、Quora遇到了一些困难。
使用httpclient来进行模拟登陆并没有让人觉得轻松。
第一点是中文文档的匮乏,目前网上的资料有两个版本,第一个是httpclient 3.x,另外一个是httpclient 4.x,而这两个版本的差别还是蛮大的。两种不同版本的资料相互杂交,让人看了心烦。而英文文档就相对丰富一些了,不过面对相当的专业词汇的时候,还有有些力不从心。(丢毛老师的脸了。)
第二点是参数的选择,例如代码:

HttpPost httppost = new HttpPost("http://www.lashou.com/account/login/");
         List<NameValuePair> params = new ArrayList<NameValuePair>();
         params.add(new BasicNameValuePair("user_id", "testuser007"));
        params.add(new BasicNameValuePair("pwd", "asdfg123"));
        params.add(new BasicNameValuePair("yan", yan));
        params.add(new BasicNameValuePair("save_user", "on"));
        params.add(new BasicNameValuePair("save_pwd", "on"));
        params.add(new BasicNameValuePair("sub", "登录"));
        httppost.setEntity(new UrlEncodedFormEntity(params));
中 ,BasicNameValuePair的第一个参数的确定就是一件令人心烦的事。在post的方式中,需要知道那些参数被传递。而这个过程就会涉及到抓包的问题了。
网络上提供了很多抓包的工具和方法。由于个人习惯的原因,并不想额外的安装抓包软件进行分析,而是使用chrome的内置抓包工具进行分析。然而问题就处在这里,真的很想吐槽数据的繁琐。上百条数据,head、request、from data甚至cookie等,看得实在心累。于是不得不使用抓包工具,结果抓下来发现还没完。。
以QQ空间、新浪微博举例,在登录的过程中,各种数据是经过加密算法加密后发送的,因此对于传送的数据,需要加密后发送。最后弄得很烦躁。

于是上午的时候打算暂停一会儿,弄些别的玩玩。
晚上开始玩玩简单数据分析——拟录取研究生名单里的隐含信息。
首先是数据的收集,这个简单,随便百度一下就能搜索到相关的Excel文件。然而,如何把这么多数据批量存入数据库
中呢?
本人使用的是mysql数据库,这里记录一下自己的方法:
1)首先打开Excel文件
这里写图片描述
2)选择另存为cvs文件或者txt文件。这里选择了txt文件。注意,在存为txt文件的时候,需要存为制表符分隔的形式。
这里写图片描述
3)打开另存好的文件,再次另存为一下,这里需要做的是编码修改为utf-8(支持中文,防止乱码),以和数据库的编码对应起来。
这里写图片描述
4)mysql数据中建立相对应的数据表。
5)编写语句:load data local infile ‘C:/Users/xxw/Desktop/list2.txt’ into table stuinfo fields terminated by ‘\t’;并运行。
6)运行结果,2333条数据轻松集体存入数据库。
这里写图片描述
这里写图片描述
总结:过程很简单,但在操作的时候还是遇到一些形形色色的小问题。光看没有用,动手才是王道。
接下来,会导入全国院校代码表。之后再做一些其他的统计分析,以作消遣娱乐之用。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值