标签归档:dom

几种程序报警通知的方式

线上的项目出现错误不能及时知道怎么办?不及时处理影响用户体验怎么办! 在error_handle 和exception_handle 方法里添加提醒方式。 有以下几种比较及时的方式: 1.短信接口。缺点是得浪费点钱。(不过一条就6分左右。这种费钱的报警必须注意控制频率。避免碰到访问量大时出现错误报警,持续狂刷,瞬间几千条短信耗完。可以借助memcache 几分钟报警一条。) 2.发邮件 + 微信开启邮件插件。 通知很及时! 3.qq机器人。 网上关于qq机器人的php版程序很多。主要是通过curl模拟了3g.qq.com的聊天过程。组织header,抓取响应的header 弄到sid,设置一些cookie,反正搞得跟3g.qq.com走网页一样就行了。curl_setopt 那个header选项设置为 true 便于能抓到header。 4.发送微信消息。 进微信公众平台 http://mp.weixin.qq.com/cgi-bin/loginpage?t=wxm-login&lang=zh_CN 然后你就用firebug或者chrome开发者工具研究怎么模拟提交表单吧。你要是看看qq机器人的程序弄这个很容易的。 好像是要设置2个cookie mp_user=gh_xxxxxxxxxxxxxxx mp_sid=RjU3cUQ1UU1ZVkloYXhrZE5ETUJLSmM0Q2MxYmpqaVlvcGxadThLcTJwSGNWWnFGQWJmalNwbHNCbkRTR1dOMWk3X0xkSWFmNlBzME1RRmxaU0NPZVhmUWhSRlZNc1cxeFVNTEJVWUZKbkdzY2lMOFl0T3FxSnQ1aUJYMmppSHc   进去后再看看发送给某人消息怎么发的吧。就是后台这块发消息用的一个fakeId 。你在要给某个用户发消息时链接上可以看到。 用户管理: http://mp.weixin.qq.com/cgi-bin/contactmanagepage?t=wxm-friend&lang=zh_CN&pagesize=10&pageidx=0&type=0&groupid=100 给某个用户发消息: http://mp.weixin.qq.com/cgi-bin/singlemsgpage?fromfakeid=60890145&msgid=&source=&count=20&t=wxm-singlechat&lang=zh_CN 提交 : 网络 – 保持一下。 http://mp.weixin.qq.com/cgi-bin/singlesend?t=ajax-response&lang=zh_CN post参数: ajax 1 … 继续阅读

发表在 工作总结 | 标签为 , , , , , | 留下评论

使用DOM4j创建xml文件

package com.cstp.xml; import java.io.File; import java.io.FileWriter; import java.io.IOException; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; public class CreatXml { /** * @param args */ public static void main(String[] args) {    create(); } public static void create(){ … 继续阅读

发表在 Java Web | 标签为 , | 留下评论

使用DOM操作HTML文档

使用DOM操作HTML文档   Node对象定义了一系列属性和方法,来方便遍历整个文档。用parentNode属性和childNodes[]数组可以在文档树中上下移动;通过遍历childNodes[]数组或者使用firstChild和nextSibling属性进行循环操作,也可以使用lastChild和previousSibling进行逆向循环操作,也可以枚举指定节点的子节点。而调用appendChild()、insertBefore()、removeChild()、replaceChild()方法可以改变一个节点的子节点从而改变文档树。   需要指出的是,childNodes[]的值实际上是一个NodeList对象。因此,可以通过遍历childNodes[]数组的每个元素,来枚举一个给定节点的所有子节点;通过递归,可以枚举树中的所有节点。下表列出了Node对象的一些常用属性和方法: Node对象常用属性: 属性 描述 attributes 如果该节点是一个Element,则以NamedNodeMap形式返回该元素的属性。 childNodes 以Node[]的形式存放当前节点的子节点。如果没有子节点,则返回空数组。 firstChild 以Node的形式返回当前节点的第一个子节点。如果没有子节点,则为null。 lastChild 以Node的形式返回当前节点的最后一个子节点。如果没有子节点,则为null。 nextSibling 以Node的形式返回当前节点的兄弟下一个节点。如果没有这样的节点,则返回null。 nodeName 节点的名字,Element节点则代表Element的标记名称。 nodeType 代表节点的类型。 parentNode 以Node的形式返回当前节点的父节点。如果没有父节点,则为null。 previousSibling 以Node的形式返回紧挨当前节点、位于它之前的兄弟节点。如果没有这样的节点,则返回null。   Node对象常用方法: 方法 描述 appendChild() 通过把一个节点增加到当前节点的childNodes[]组,给文档树增加节点。 cloneNode() 复制当前节点,或者复制当前节点以及它的所有子孙节点。 hasChildNodes() 如果当前节点拥有子节点,则将返回true。 insertBefore() 给文档树插入一个节点,位置在当前节点的指定子节点之前。如果该节点已经存在,则删除之再插入到它的位置。 removeChild() 从文档树中删除并返回指定的子节点。 replaceChild() 从文档树中删除并返回指定的子节点,用另一个节点替换它。

发表在 Java Web | 标签为 | 留下评论