元旦放了五天,睡了几天好觉,也把抢楼机完成了。现在就天天把程序挂着,看着console里面提示抢到1楼了,就跑去yaoyuan看看,感觉就像是挖了个陷阱,过会儿就去捡东西一样……

程序完成了,对httpClient、jDom、Tidy的使用也熟悉了不少。虽然程序运行的效率应该还行,但是说实在话我对我写的程序结构很不满意。大概是原来的PHP写多了,准确的说是面向过程的编程方式写多了。脑子里面总是想着去写一个个的功能模块,写一个个的function(虽然我实际写的是method),然后拼凑起来,就是一个程序了。。。

我不知道该怎样去写Java的程序,思维方式没有转变过来,也许是我写的Java程序太少,也或许是我看别人的源代码看的太少,反正,什么都是太少……

再说下抢楼机吧:

java 代码
  1. //获取一个url的内容
  2. public InputStream getInputStream(String url){}
  3. //把从url获取的InputStream解析成xml文件并保存下来
  4. public Node getDocument(InputStream inputStream, String outFileName){}
  5. //登陆yaoyuan并且获取登陆的cookie
  6. public Cookie[] getCookie(){}
  7. //获取首页上没有回复的帖子ID
  8. public ArrayList getUnreplyRepId(Document doc){}
  9. //获取已经回复帖子中自己的回复的楼层数
  10. public ArrayList getReplyFloor(Document doc){}
  11. //从xml文件中获取随机的回复字符串
  12. public String getRandomReply(String configFile, String replyStringXPath)
  13. //向没有回复的帖子post随机的回复
  14. public void doPostReply(String unReplyRepId, String randomReply,Cookie[] cookie){}

就这些方法,,思路还算清晰,不过该死的cookie浪费了我一天的时间,因为把站点写错了,主要还是因为对httpClient的使用不熟悉,不过httpClient设置cookie的方式也比较搞笑就是了:

已知我有一个 Cookie数组cookie[],一般来说设置cookie应该是:

java 代码
  1. HttpState initialState = new HttpState();
  2. for(int i=0; i < cookie.length; i++){
  3. initialState.addCookie(cookie[i]);
  4. }

但是httpClient必须这样设置:而里面的myName=scu-wangdi完全是多余的,我只是为了方便,反正多加一个cookie过去yaoyuan也不会有什么影响。。。

java 代码
  1. HttpState initialState = new HttpState();
  2. String cookieString = "scu-wangdi";
  3. for (int i = 0; i < cookie.length; i++) {
  4. cookieString += ";" + cookie[i];
  5. }
  6. initialState.addCookie(new Cookie("www.yaoyuan.com", "myName", cookieString, "/", null, false));

总之,程序是完成了。。。需要改进的还有很多。。。。。唉。。继续迷茫……

忽忽,抢楼机完成……相关推荐

  1. php论坛的主帖表设计,小蜜蜂论坛回帖机推出phpwind论坛回帖机

    小蜜蜂论坛回帖机推出phpwind论坛回帖机 小蜜蜂论坛回帖机,小蜜蜂论坛自动回帖机,phpwind论坛回帖机 小蜜蜂论坛回帖机,小蜜蜂论坛自动回帖机功能介绍 小蜜蜂论坛自动回帖机是针对自己发的帖子. ...

  2. 阿里云如何将服务器添加至跳板机,如何将服务器添加至jumpsever

    如何将服务器添加至跳板机. 获取跳板机/root/.ssh/id_rsa.pub 中的内容 登陆要添加到跳板机的目标机器 /root/.ssh/authorized_keys 将跳板机id_rsa.p ...

  3. 2022-2028年中国激光切管机行业市场研究及前瞻分析报告

    [报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国激光切管机行业市场行业相关概述.中国激光 ...

  4. docker 容器访问宿主机的解决方式

    需求 基于本地docker的自研及使用需要,希望docker容器的服务能连接到宿主机提供的服务. 背景 网络上查阅了大量的资料,基本的解决办法是通过手动查阅IP的方式进行, 但docker宿主机的ip ...

  5. 2022-2028中国曝光机市场现状及未来发展趋势

    [报告类型]产业研究 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了曝光机行业相关概述.中国曝光机行业运行环境.分析了中国曝光机行业的现 ...

  6. Go 学习笔记(79)— Go 标准库 net(获取本机IP地址)

    1. 获取本机 IP 地址 package mainimport ("fmt""net" )// 获取本机网卡IP func getLocalIP() (ipv ...

  7. 宿主机虚拟机文件复制 apt-get 换成yum

    这两天重新装了VMware 14 Pro和Ubuntu18.04.1.在使用中,发现无法: 从Windows主机向虚拟机的Ubuntu系统中 复制粘贴文字或者拖动文件. 在查看了VMware的文档和其 ...

  8. 本机无法访问虚拟机上的nignx

    问题测试: 虚拟机访问本机:ping通,curl -XGET http://本机ip:9001/ 通 本机访问虚拟机:ping通,curl -XGET http://虚拟机ip 不通 问题原因: 虚拟 ...

  9. 多机多卡训练基本原理

    多机多卡训练基本原理 在工业实践中,许多较复杂的任务需要使用更强大的模型.强大模型加上海量的训练数据,经常导致模型训练耗时严重.比如在计算机视觉分类任务中,训练一个在ImageNet数据集上精度表现良 ...

  10. 反应式系统实现MQTT客户机

    反应式系统实现MQTT客户机 Implementing an MQTT client for reactive systems MQTT Reactive是从LiamBindle的MQTT-C库派生的 ...

最新文章

  1. regexp 好汉字符串_如何在JavaScript中使用RegExp确认字符串的结尾
  2. python包里面的dll是什么_Python中的包ImportError
  3. 应用上云 2 小时烧掉近 50 万,创始人:差点破产,简直噩梦
  4. Gentle.Net学习笔记四:修改代码,使用Oracle数据库
  5. 我写的几篇技术文章之一:Windows消息拦截技术的应用
  6. SQL获取变量类型以及变量最大长度
  7. 昨天,美团程序员的年终奖金可能没了!
  8. 用python写一段话.使这句话在电脑屏幕中循环播放_Python笔记_第一篇_面向过程第一部分_6.循环控制语句(while 和 for)_...
  9. 来讲讲什么是元数据和主数据
  10. 高并发大流量解决方案
  11. Navicat 查看导出连接的密码 破解保存的密码 + 密码解密|navicat查看密码方案
  12. 从“断臂求生”到一骑绝尘,航运巨头马士基如何利用区块链技术力挽狂澜?
  13. ai怎么做盒子效果图_仅需5步!手把手教你如何用AI绘制3D效果形象
  14. MMPlayer同步文件到手机应用中的方法
  15. 基于XPDL2.0的过程定义
  16. antd的联级选择器异步调用编辑回显_react-uplod-img 是一个基于 React antd组件的图片上传组件...
  17. Jacoco-报告改造实践
  18. 871. Minimum Number of Refueling Stops
  19. Oracle转PostgreSQL之start with / connect by
  20. 私域运营中,企业私域流量挖掘用户价值的三种手段

热门文章

  1. 泛泰A870 Recovery KitKat 合集
  2. 英文论文写作的注意事项都有哪些?
  3. IOS开发之——音乐播放器-资源和Model(02)
  4. 2021超级热门引流红包裂变微信分享朋友圈广告游戏源码
  5. MIMO系统如何获得分集增益(1)
  6. .NET中对于日文输入法的控制
  7. VRay(一)材质基础
  8. C++并发编程 - 同步并发操作
  9. foxpro获取html数据类型,FoxPro数据库写入html文件中
  10. Insecure Randomness引发对随机数生成器抵挡加密攻击的方法