- 浏览: 602525 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
Garlic_90:
ireport分页的话代码写起来有些复杂,我以前试过,比较简单 ...
ireport分页显示 -
feijiing:
nice,problem solved,thanks!
虚拟机安装centos no valid devices were found on which to cereate new file systems -
Jocken:
引用的jar包需要怎么加在命令里面?十多个呢,为什么配在MAN ...
linux 如何运行jar包 -
xiaoqiao800:
看到你的问题,有帮助,我之前都是手动的clear项目下的cla ...
The project cannot be built until build path errors are resolved -
mfkdzhou:
楼主好,我现在也遇到这个问题,可以把源代码发一份不?谢谢了。8 ...
java打印
公司要求每天都需要写工作日志,并且在一个社区里面发表,由于公司不能 上网因此自己写了一个模拟小程序放在手机上,实现自动登录并发表日志在这里做一个备份,以防以后会用到类似功能
package com.socket; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.commons.httpclient.Header; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpMethod; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.methods.PostMethod; public class MyHttpClient { // TODO Auto-generated method stub private static HttpClient client = new HttpClient(); /** * @param args * @throws IOException * @throws HttpException */ public static void main(String[] args) throws HttpException, IOException { if(login()) { System.out.println("登录成功"); if(shareLog("日志发布成功拉!")) { System.out.println("分享成功"); } } } /** * * 使用POST方式提交数据 * @return */ private static HttpMethod getLoginPostMethod() { PostMethod post = new PostMethod("https://www.belink.com/j_spring_security_check"); NameValuePair password = new NameValuePair("j_password", "密码"); NameValuePair name = new NameValuePair("j_username","用户名"); NameValuePair remember = new NameValuePair("spring_security_remember_me", "on"); post.setRequestBody(new NameValuePair[] { name, password,remember}); return post; } /** * 登录 */ private static boolean login() throws HttpException, IOException { HttpMethod method = getLoginPostMethod(); client.executeMethod(method); // 打印服务器返回的状态 System.out.println(method.getStatusLine()); //页面重定向 int statuscode=method.getStatusCode(); if(statuscode==HttpStatus.SC_MOVED_TEMPORARILY) { Header header=method.getResponseHeader("location"); if(header!=null) { String redirectUrl=header.getValue(); if(redirectUrl!=null&&!"".equals(redirectUrl)) { GetMethod redirect=new GetMethod("https://www.belink.com/portal/main"); redirect.setRequestHeader("Accept", " text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); redirect.setRequestHeader("Accept-Encoding", "gzip, deflate"); redirect.setRequestHeader("Host", "www.belink.com"); redirect.setRequestHeader("Accept-Language", "zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3"); redirect.setRequestHeader("Connection", "keep-alive"); redirect.setRequestHeader("Referer", "https://www.belink.com/home_login.jsp"); redirect.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0"); redirect.setRequestHeader("Cookie", "Hm_lvt_449f6364887899ece45a9a548972604a=1353419946,1353496848,1353593152,1353999974; Hm_lpvt_449f6364887899ece45a9a548972604a=1354007630; login_userid=chelei%40belink.com; JSESSIONID=4BF7C7FA4D6CB53801B999CEE950D9F5; SPRING_SECURITY_REMEMBER_ME_COOKIE=Sk1OMVp1blkzVjJGNlBucDgyWlgrdz09OkhZZE5kMFhxYkg3b29jd3RsNW8xZXc9PQ"); client.executeMethod(redirect); System.out.println(redirect.getResponseBodyAsString()); System.out.println("Redirect:"+redirect.getStatusLine().toString()); redirect.releaseConnection(); if(redirect.getStatusCode()==HttpStatus.SC_OK) { // 释放连接 method.releaseConnection(); return true; } } } } return false; } /** * 分享日志 * @return * @throws IOException * @throws IOException * @throws HttpException */ private static boolean shareLog(String logContent) throws IOException { PostMethod post = new PostMethod("https://www.belink.com/service/event/publish.json"); //日志发布时间 SimpleDateFormat format=new SimpleDateFormat("yyyyMMdd"); NameValuePair content = new NameValuePair("content", "{\"endTime\":\""+format.format(new Date())+"\",\"title\":\"我的日志\",\"logContent\":\""+logContent+"\"}"); NameValuePair members=new NameValuePair("members","e40b44bbae171ffa5dfd1299d4c791f3"); NameValuePair message = new NameValuePair("message"," 我发起了一个$日志"); NameValuePair open = new NameValuePair("open", "false"); NameValuePair type = new NameValuePair("type", "log"); post.setRequestBody(new NameValuePair[] { content,members,message,open,type}); post.setRequestHeader("Accept", "*/*"); post.setRequestHeader("Accept-Encoding", "gzip, deflate"); post.setRequestHeader("Accept-Language", "zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3"); post.setRequestHeader("Cache-Control", "no-cache"); post.setRequestHeader("Connection", "keep-alive"); post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); post.setRequestHeader("Host", "www.belink.com"); post.setRequestHeader("Pragma", "no-cache"); post.setRequestHeader("Referer", "https://www.belink.com/portal/app"); post.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0"); post.setRequestHeader("X-Requested-With", "XMLHttpRequest"); try { client.executeMethod(post); } catch (HttpException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("分享日志提交状态:"+post.getStatusLine()); if(post.getStatusCode()==HttpStatus.SC_OK) { System.out.println(post.getResponseBodyAsString()); post.releaseConnection(); return true; } return false; } }
发表评论
-
java模拟点击
2020-05-12 18:26 462try { Dimension screenS ... -
jekins集成maven发布项目过程中遇到的坑
2017-04-05 14:33 1716背景: 用maven构建项目之后,每次需要部署集成测试环 ... -
logback配置
2015-08-17 15:30 661<?xml version="1.0" ... -
javamail
2014-07-09 21:35 802http://blog.csdn.net/zapldy/art ... -
jdbc批量插入数据
2013-11-10 11:35 856以下过程网上看到,备份一下语法而已 Connection co ... -
jdbc获得生成记录主键
2013-11-10 11:18 708在网上看到的,备份一下而已 Connection conn = ... -
jdbc调用存储过程
2013-11-10 11:12 673只是把调用过程备份一下 Connection conn = ... -
十六进制转字符串
2013-07-04 22:09 1347记录一下十六进制转字符串,以备以后使用方便 //十六进制转字符 ... -
List.toArray()强转对象数组
2012-06-13 15:18 1501假设现在有一个集合list,里面装的都是对象A,如下代码进行强 ... -
正则表达式
2012-06-05 13:53 1如果你曾经用过Perl或任 ... -
关于LinkedHashMap的一些简单实验
2012-05-15 14:53 929同为实现了Map接口的类,LinedHashMap在迭代的时候 ... -
UUID
2012-05-14 15:34 1490转自http://popwang.iteye.com/blog ... -
eclipse install memory analyzer
2012-05-02 16:16 1084安装地址 http://download.eclipse.or ... -
java加密解密算法记录
2012-04-13 14:56 9922以下内容均摘自我买的书籍《java加密与解密的艺术》作者 梁栋 ... -
common email发送邮件
2012-03-06 16:56 1613项目地址:http://commons.apache.org/ ... -
java实现压缩和解压缩
2012-03-01 16:17 1113转自于站内兄弟的文章:http://wallimn.iteye ... -
java算法记录
2012-02-07 19:12 844package com.algorithm; impor ... -
java中yield(),sleep()以及wait()的区别
2012-02-07 10:30 1002转自http://xiechengfa.iteye.com/b ... -
oracle调用java
2011-12-27 15:18 1477修改别人写的oracle数据库调用java代码,换了一个环境, ... -
myeclipse无法自动提法java类方法
2011-12-24 23:01 962转自:http://xzh2012.blog.163.com/ ...
相关推荐
QQ空间日志全自动监控器是一款专门针对QQ空间设计的实用工具,它的主要功能是对指定的QQ号码进行实时监控,一旦该QQ用户发布了新的日志,该软件会立即自动发表评论。这一工具对于那些想要及时回应朋友动态或者进行...
标题中的“什么值得买自动签到,自动发表评论,自动发送签到结果邮件”表明这是一个自动化脚本或程序,用于在“什么值得买”(Smzdm)网站上执行一系列任务,包括用户日常的签到操作,发表评论,并将签到的结果通过...
自动签到通常用于社区论坛、社交网络或者在线服务,这些平台鼓励用户每天登录并参与互动。而“发表心情”则可能是指在用户个人资料或动态中添加文字或表情来表达当前的情绪状态,常见于社交网络。 【文件内容推测】...
使用易语言,开发者可以编写自动化脚本来控制软件的行为,比如模拟用户操作,定时执行任务等。 2. **API接口调用**:为了与QQ空间进行交互,需要使用QQ提供的API接口。这些接口允许程序发送请求,执行诸如发布说说...
在这个案例中,我们需要模拟用户登录并发送文章数据到51博客的服务器。 5. **数据处理**:在自动化发表文章的过程中,需要处理用户名、密码、文章标题、内容等信息。这些数据可能需要进行编码、加密或者格式转换,...
这个功能在社交媒体营销或者互动活动中非常常见,目的是在用户发布说说后能第一时间自动发表评论,以获取更多的曝光和互动。 首先,我们要理解PHP是一种广泛使用的开源服务器端脚本语言,尤其适合Web开发。它的语法...
6. **发表帖子**:根据论坛的规则和接口,构造合适的POST请求,包含帖子内容和必要的参数,然后发送请求发表回帖。 7. **导出列表**:在执行完回帖操作后,可能需要将回帖结果导出为列表,便于查看和分析。易语言的...
通过应用这个补丁,Thinksns的使用者可以享受到一个更加稳定、高效且安全的发表日志功能,同时也能为开发团队提供一个良好的实践平台,学习如何利用Selenium进行自动化测试。这对于持续改进和维护Thinksns系统至关...
4. **发表日志**:对于更复杂的文字内容,如文章或日记,QZoneHelper提供了发表日志的接口。开发者可以上传文本、图片甚至视频,创建一篇完整的QQ空间日志。 5. **评论日志**:与评论说说类似,CQZoneH类同样支持对...
例如,爬虫可能会找到论文标题、作者、摘要、发表日期等元素。 3. **数据存储**:爬取的文献信息通常需要保存到本地或数据库中。Python提供了许多数据处理库,如`pandas`用于创建DataFrame,便于数据操作;`sqlite3...
5. **自动浏览、点赞、评论**:这些是人气精灵的主要功能,通过模拟用户操作,自动进行页面访问、对内容点赞和发表评论,以此来增加QQ空间的活跃度和人气值。需要注意的是,这种行为可能违反QQ空间的使用规则,过度...
4. **界面模拟图**:包括游客、成员和管理员的登录界面,研究所首页,登录后的界面,发表日志和留言的功能等。 **五、数据库操作** 对于研究所网站,数据库操作主要包括公告管理、成员信息管理、博文管理和评论...
同时,软件可能还集成了自动化脚本技术,如JavaScript或自动化测试框架,来模拟用户的点击和输入行为,实现一键发表。 此外,压缩包中的"caocaoyjss-v1.0"可能是该软件的可执行文件名,表明这是草草一键发表QQ说说...
在互联网早期,个人网络空间,如百度空间,是一个流行的社交平台,用户可以发表日志、分享图片并互动。"百度空间互踩"是当时一种常见的社交行为,它指的是用户访问他人的空间并留下访问记录,以示友好或增加人气。...
回贴机则是一种能够自动在贴吧发布回复的程序,可能是为了模拟用户互动,提高帖子热度或者执行其他自动化任务。 在深入讨论之前,我们需要理解一些基本概念。首先,服务器(Server)通常是指在网络环境中提供服务的...
它允许轻松地记录事件日志并自动生成可执行的RPA脚本,该脚本会驱动SW机器人在执行感兴趣的例程期间模拟观察到的用户行为(以前记录在专用的UI日志中)。作者SmartRPA已发展为诊断,由罗马大学的电脑,控制和管理...
此外,考虑到新闻网站可能会有反爬策略,如验证码、IP限制等,"美科新闻抓取程序"可能还集成了模拟登录、设置请求头、随机延时等技巧,以避免被目标网站封锁。同时,为保证抓取效率,程序可能还采用了多线程或异步IO...
C#可以构建HTTP请求的POST数据,并设置合适的请求头,模拟浏览器行为提交数据。 4. **多线程/异步编程**:为了提高效率,顶贴器可能需要并发处理多个帖子。C#提供了Task类和async/await关键字,支持异步编程,使得...
自动登录功能通常依赖于模拟登录机制,可能涉及到网页解析(如BeautifulSoup或lxml库)和处理cookies及session。关注功能则需要正确地发送HTTP请求到微博的关注接口,而发表心情则涉及到微博的发布接口,可能需要...
发表日志:这不是主要环节之一。 综上所述,通过以上知识点的详细介绍,我们可以更好地理解信息技术在教育教学中的应用,尤其是针对Excel、PowerPoint以及Microsoft Word等常用办公软件的使用技巧。这些技能对于...