cURL 是一个功能强大的PHP库,使用PHP的cURL库可以简单和有效地抓取网页并采集内容,设置cookie完成模拟登录网页,curl提供了丰富的函数,开发者可以从PHP手册中获取更多关于cURL信息。本文以模拟登录开源中国(oschina)为例,和大家分享cURL的使用。
PHP的curl()在抓取网页的效率方面是比较高的,而且支持多线程,而file_get_contents()效率就要稍低些,当然,使用curl时需要开启下curl扩展。
代码实战
先来看登录部分的代码:
//模拟登录
function login_post($url, $cookie, $post) {
$curl = curl_init();//初始化curl模块
curl_setopt($curl, CURLOPT_URL, $url);//登录提交的地址
curl_setopt($curl, CURLOPT_HEADER, 0);//是否显示头信息
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);//是否自动显示返回的信息
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie); //设置Cookie信息保存在指定的文件中
curl_setopt($curl, CURLOPT_POST, 1);//post方式提交
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));//要提交的信息
curl_exec($curl);//执行cURL
curl_close($curl);//关闭cURL资源,并且释放系统资源
}
函数login_post()首先初始化curl_init(),然后使用curl_setopt()设置相关选项信息,包括要提交的url地址,保存的cookie文件,post的数据(用户名和密码等信息),是否返回信息等等,然后curl_exec执行curl,最后curl_close()释放资源。注意PHP自带的http_build_query()可以将数组转换成相连接的字符串。
接下来如果登录成功后,我们要获取登录成功后的页面信息。
//登录成功后获取数据
function get_content($url, $cookie) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie); //读取cookie
$rs = curl_exec($ch); //执行cURL抓取页面内容
curl_close($ch);
return$rs;
}
函数get_content()中也是先初始化curl,然后设置相关选项,执行curl,释放资源。其中我们设置CURLOPT_RETURNTRANSFER为1即自动返回信息,而CURLOPT_COOKIEFILE可以读取到登录时保存的cookie信息,最后将页面内容返回。
我们的最终目的是要获取到模拟登录后的信息,也就是只有正常登录成功后才能获取的有用信息。接下来我们以登录开源中国的移动版为例,看看如何抓取到登录成功后的信息。
//设置post的数据
$post = array (
'email' => 'oschina账户',
'pwd' => 'oschina密码',
'goto_page' => '/my',
'error_page' => '/login',
'save_login' => '1',
'submit' => '现在登录'
);
//登录地址
$url = "http://m.oschina.net/action/user/login";
//设置cookie保存路径
$cookie = dirname(__FILE__) . '/cookie_oschina.txt';
//登录后要获取信息的地址
$url2 = "http://m.oschina.net/my";
//模拟登录
login_post($url, $cookie, $post);
//获取登录页的信息
$content = get_content($url2, $cookie);
//删除cookie文件
@ unlink($cookie);
//匹配页面信息
$preg = "/(.*)<\/td>/i";
preg_match_all($preg, $content, $arr);
$str = $arr[1][0];
//输出内容
echo$str;
运行上述代码后,我们会看到最终获取到登录用户的头像图片。
使用总结
1、初始化curl;
2、使用curl_setopt设置目标url,和其他选项;
3、curl_exec,执行curl;
4、执行后,关闭curl;
5、输出数据。
参考文献
《curl简介及php中的curl》,作者不详,http://www.2cto.com/kf/201208/147091.html
《使用PHP CURL的POST数据》,作者:Veda,http://www.nowamagic.net/librarys/veda/detail/124
《php 使用curl模拟登录discuz以及模拟发帖》,作者:tianxin,http://www.cnblogs.com/tianxin2001x/archive/2009/10/28/1591311.html
转载于:https://blog.51cto.com/lina227web/1407539
你可能感兴趣的:(PHP模拟登录并获取数据)
- Python爬虫实战教程——如何爬取多个国家的实时汇率数据
Python爬虫项目
2025年爬虫实战项目python爬虫chrome信息可视化
1.引言随着全球经济一体化,跨国交易和投资变得越来越普遍,实时汇率数据成为了金融领域和国际贸易中的关键数据。对于金融分析师、投资者或者是开发者来说,能够实时获取并分析汇率数据是至关重要的。本文将深入探讨如何使用Python爬虫技术抓取多个国家的实时汇率数据。我们将使用最新的技术和工具,介绍如何通过Python编写一个高效、可扩展的汇率数据爬虫。2.为什么需要实时汇率数据?汇率数据被广泛应用于以下几
- 漫画算法python篇pdf_用Python抓取漫画并制作mobi格式电子书
jian bao
漫画算法python篇pdf
想看某一部漫画,但是用手机看感觉屏幕太小,用电脑看吧有太不方面。正好有一部Kindle,决定写一个爬虫把漫画爬取下来,然后制作成mobi格式的电子书放到kindle里面看。本人对于Python学习创建了一个小小的学习圈子,为各位提供了一个平台,大家一起来讨论学习Python。欢迎各位到来Python学习群:943752371一起讨论视频分享学习。Python是未来的发展方向,正在挑战我们的分析能力
- 文档管理系统OnlyOffice在线编辑功能
天翎MyApps低代码平台
知识文档管理word
随着信息化时代的发展,越来越多的企业需求文档在线协作功能,正是在此趋势下,天翎知识文档管理系统联合OnlyOffice插件满足企业在线协同的需求,插件部署到服务器后,系统操作用户直接在浏览器操作即可实现在线编辑操作,无需额外在用户操作电脑中安装插件。①文档内容解析用户根据word模板建立对应的域并填写内容,用户上传word到系统中,系统中调用POI接口将用户上传的word填写的内容进行获取到系统操
- 我们的AI人工智能,自动发布了一篇假新闻……
数据断案
数据人的故事人工智能数据库sqloracle数据分析
今天这个故事,还得从一个事故开始说起。前些日子,我们被XX公司投诉,说我们的资讯发布了关于他们公司授信额度的不实报道:告诉我们这篇资讯与他们公司最新公开披露的数据不一致,相关内容并不属实,可能对广大网友们造成严重误导,并对他们公司造成了严重负面影响……balabala一堆指责,并要求我们3小时内删除全部相关信息。然后,他们丢了2篇公告附件过来。我们对照着仔细一看,还真是我们搞错了:由于数据错误,“
- 深入探索Ajax技术与应用实践
Javen Fang
本文还有配套的精品资源,点击获取简介:Ajax技术允许在不刷新整个页面的情况下进行网页内容的局部更新,大大提升了用户体验。文章详细解析了Ajax的核心组件和工作流程,并强调了其在Web开发中的重要性。此外,还探讨了Ajax的优点、应用场景以及在实际开发中需要注意的问题。通过学习Ajax,开发者可以设计出更加动态和高效的网页应用。1.Ajax技术概述和定义Ajax技术概述Ajax技术的核心在于其异步
- 建立高质量个人数据库:解锁DeepSeek的关键
CodeJourney.
人工智能算法python
在人工智能飞速发展的时代,DeepSeek为普通人处理数据、提升工作效率带来了新的可能。然而,很多人在使用过程中存在误区,本文围绕如何正确利用DeepSeek搭建高质量个人数据库展开探讨,强调其对个人成长和发展的重要性,并通过具体实例展示其强大功能。重新理解DeepSeekDeepSeek的普及使普通人能够轻松搭建个人数据库,但不少人在使用时存在错误认知。他们将DeepSeek视为主角,把杂乱无章
- AWS DevOps 面试问题及答案
m0_65697474
1024程序员节
常规AWSDevOps问题什么是DevOps?DevOps是一套集成软件开发(Dev)和IT运营(Ops)的实践,旨在缩短开发生命周期并根据业务目标频繁提供功能、修复和更新。使用AWS进行DevOps有哪些好处?AWS提供弹性计算云(EC2)、弹性容器服务(ECS)和ElasticBeanstalk等灵活服务,可帮助自动化和扩展开发和部署管道。功能包括可扩展性、自动化、CI/CD、基础设施即代码(
- Python 简单后台项目的脚手架
程序媛了了
python开发语言
说明近期写了一个简单的项目,在后台运行获取网上的期货数据并保存到相应的数据库里。由于之前工作很多这种简单的类似调用接口或攫取数据的项目都是用Python来写,因此这次也继续用Python写。但是这次更换了几个包,此份文档简单来说明一下。依赖的包toml:用户解析配置文件,配置文件用的是toml格式。arrow:用于处理日期相关。loguru:用于日志处理。requests:用于http请求响应。p
- 麒麟银河桌面版,成功安装cuda12.6,mysql
hitsz_syl
mysql银河麒麟cuda
一、要卸载并禁用nouveau驱动程序,可以按照以下步骤进行:1.确认nouveau驱动的当前状态:首先,你可以使用以下命令查看nouveau驱动是否正在运行:lsmod|grepnouveau如果有输出,说明nouveau驱动正在加载。2.临时禁用nouveau驱动:可以使用modprobe命令来临时禁用nouveau驱动(重启后会恢复加载):sudomodprobe-rnouveau3.永久禁
- Ubuntu安装docker-compose-plugin报错“无法定位软件包”终极解决方案
川星弦
ubuntudockerlinux
摘要:本文针对Ubuntu系统中安装docker-compose-plugin时出现的E:无法定位软件包错误,提供两种解决方案——官方源修复与国内镜像源替换法,并附赠镜像加速配置技巧。一、问题背景在Ubuntu系统通过aptinstall安装Docker生态工具时,常因软件源配置问题导致以下报错:E:无法定位软件包docker-compose-plugin此问题多由Docker官方软件源未正确添加
- PHP与数据库连接常见问题及解决办法
奥顺互联_老张
php教程php数据库
PHP与数据库连接常见问题及解决办法在现代Web开发中,PHP与数据库的连接是不可或缺的一部分。无论是构建动态网站、内容管理系统(CMS)还是电子商务平台,PHP与数据库的交互都是核心功能之一。然而,在实际开发过程中,开发者常常会遇到各种与数据库连接相关的问题。本文将探讨PHP与数据库连接中的常见问题,并提供相应的解决办法。1.数据库连接失败问题描述在PHP中,连接数据库时最常见的错误是无法连接到
- AJAX PHP:深入理解与实际应用
wjs2024
开发语言
AJAXPHP:深入理解与实际应用引言随着互联网技术的不断发展,前端与后端交互变得更加频繁。AJAX(AsynchronousJavaScriptandXML)和PHP(HypertextPreprocessor)作为两种流行的技术,在实现动态网页和应用程序方面扮演着重要角色。本文将深入探讨AJAXPHP的工作原理、应用场景以及实际开发中的注意事项。AJAXPHP概述AJAXAJAX是一种基于Ja
- python提取excel数据批量生成固定格式的word文件的问题
鱼弦
【HOT】技术热谈excelword
鱼弦:公众号【红尘灯塔】,CSDN博客专家、内容合伙人、新星导师、全栈领域优质创作者、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen)使用Python从Excel中提取数据并生成固定格式的Word文档1.介绍本项目旨在介绍如何使用Python从Excel中提取数据并生成固定格式的Word文档
- Lua语言的嵌入式调试
涂瑷菡
包罗万象golang开发语言后端
Lua语言的嵌入式调试引言Lua是一种轻量级、高效的脚本语言,广泛应用于游戏开发、嵌入式系统、Web开发等领域。其简洁的语法和强大的扩展性使得Lua成为众多开发者的首选语言。在嵌入式系统中,由于资源有限,调试工作尤其重要。通过有效的调试手段,可以及时发现并解决潜在问题,提高系统的运行稳定性。本文将详细探讨Lua语言在嵌入式系统中的调试方法,包括调试工具、常见调试技巧和最佳实践等,旨在为开发者提供一
- A survey on instance segmentation: state of the art——论文笔记
栀子清茶
1024程序员节论文阅读计算机视觉人工智能笔记学习
摘要这篇论文综述了实例分割的研究进展,定义其为同时解决对象检测和语义分割的问题。论文讨论了实例分割的背景、面临的挑战、技术演变、常用数据集,并总结了相关领域的最新成果和未来研究方向。实例分割的发展从粗略的对象分类逐步演变为更精细的像素级别推理,广泛应用于自动驾驶、机器人等领域。论文为研究人员提供了对实例分割领域的全面了解和有价值的参考。一、简介第一部分“简介”主要介绍了实例分割的背景、定义和挑战。
- 区块链架构、跨链和演进
Omni-Space
区块链(BlockChain)区块链架构跨链演进
本文是基于作者近几年来对各种区块链平台理念和技术的研究,结合作者过去十多年的IT经验,审慎思考的结果,文章仅代表作者个人观点。作者会假设读者对各种区块链平台有一定的认知,不会对具体的区块链平台再做详细的介绍。为了从根本上说清楚区块链的架构内涵,作者先概括出区块链的本质,从区块链的本质出发,以发展的眼光给出一个区块链的详见附件架构,并对高阶的各个模块进行详细的说明。还会从区块链跨链的本质出发,说明区
- 【从零开始学习计算机科学】硬件设计与FPGA原理
贫苦游商
【从零开始学习计算机】硬件设计fpga开发学习数字逻辑verilogHDL硬件设计硬件工程
硬件设计硬件设计流程在设计硬件电路之前,首先要把大的框架和架构要搞清楚,这要求我们搞清楚要实现什么功能,然后找找有否能实现同样或相似功能的参考电路板(要懂得尽量利用他人的成果,越是有经验的工程师越会懂得借鉴他人的成果)。如果你找到了的参考设计,最好还是先看懂并理解,这一方面能提高我们的电路理解能力,而且能避免设计中的错误。在开始做硬件设计前,根据自己的项目需求,可以去找能够满足硬件功能设计的,有很
- python 装饰器
每天减 1/5kg
python
装饰器装饰器本质上是一个返回函数的高阶函数,可以接收函数作为参数,并返回一个新的函数。它允许你在不修改原函数代码的情况下,动态地给函数或方法添加额外的功能在我们的日常使用中,装饰器一般用于:日志记录、权限认证、性能分析、缓存等场景。简单示例defmy_decorator(func):defwrapper(*args,**kwargs):print("Beforecallingthefunction
- MobileNet家族:从v1到v4的架构演进与发展历程
彩旗工作室
人工智能架构人工智能机器学习cnn卷积神经网络
MobileNet是一个专为移动设备和嵌入式系统设计的轻量化卷积神经网络(CNN)家族,旨在在资源受限的环境中实现高效的图像分类、对象检测和语义分割等任务。自2017年首次推出以来,MobileNet经历了从v1到v4的多次迭代,每一代都在计算效率、模型大小和准确性上取得了显著进步。本文将详细探讨MobileNetv1、v2、v3和v4的原理、架构设计及其发展历程,并分析其关键创新和性能表现。Mo
- MindSpore:华为全场景AI框架的技术全景与生态实践
彩旗工作室
人工智能人工智能
一、框架概述MindSpore(昇思)是华为自主研发的全场景AI计算框架,于2020年3月开源,旨在实现易开发、高效执行、灵活部署三大核心目标。作为华为昇腾AI生态的基石,MindSpore支持端、边、云全场景覆盖,并深度融合昇腾处理器的算力特性,提供从模型开发、训练到推理部署的端到端能力。截至2025年,其月度开发者访问量已突破12万,成为国内开源社区最活跃的AI框架之一。二、架构设计MindS
- 这些用例设计题,你在面试时遇到过吗?
bug管理者
软件测试面试软件测试面试
功能测试点赞功能:1.点击点赞按钮,是否可以成功点赞,并显示点赞图标和微信昵称;2.点赞成功后是否可以取消点赞;3.没有网络情况下是否可以点赞;4.点赞成功后是否可以评论;5.是否按照点赞顺序进行排序;6.点赞刚好一排可以显示多少头像;7.是否有点赞人数限制;8.是否可以多次点赞/取消点赞;9.点赞成功后,原“点赞”字样是否变为“取消”;10.朋友圈是否可以看到共同好友的点赞;11.是否可以点赞刚
- oracle使用PLSQL导出表数据
web_13233421436
面试学习路线阿里巴巴oracle数据库
数据库课上布置了一个作业利用PL/SQL语言,编写一个存储过程实现针对单张表的数据导出功能,要求将给定表的数据转换成SQL语言的Insert语句,并保存在文件中。该过程以要导出的表名和保存SQL语句的文件名为参数。在网上尝试搜索了一下,中文网里没找到合适的参考文章,要么是针对特定表结构,要么是只导出特定数量的列,于是自己完成后写篇记录。首先需要定义一个导出目录,这里定义了“EXPORT_DIR”C
- 安全巡检
Redmaple925
渗透测试网络安全渗透测试安全巡检
安全巡检目的识别信息系统存在的安全脆弱性、分析信息系统存在的风险,并及时采取措施予以整改,保障信息系统安全稳定运行巡检收益1、通过专业、严谨的安全巡检服务,确保客户IT环境的安全性和稳定性2、大大降低客户的运维风险和运维成本3、专业的安全技术和专业的人员及时、全面的掌握客户IT环境的安全现状和面临的风险,并提出改进建议,降低风险4、客户从反锁的IT运维中解脱出来,更加的关注核心业务,提高工作效率5
- MySQL EXPLAIN 详解
Jing_jing_X
mysql数据库
一、EXPLAIN是什么?EXPLAIN是MySQL提供的性能分析工具,用于查看SQL查询的执行计划(即优化器如何执行查询)。它通过模拟查询过程(不实际执行SQL)返回一个表格,展示索引使用、表连接方式、扫描行数等关键信息,帮助开发者诊断性能瓶颈并优化查询。核心作用:分析查询是否高效利用索引。识别全表扫描、临时表、文件排序等高开销操作。提供优化方向,如调整索引或重构SQL。二、为什么要用EXPLA
- mongodb基本使用(四)
dibisha7239
数据库javascript数据结构与算法ViewUI
MongoDB条件操作符描述条件操作符用于比较两个表达式并从mongoDB集合中获取数据。MongoDB中条件操作符有:(>)大于-$gt(=)大于等于-$gte(db.col.insert({title:'PHP教程',description:'PHP是一种创建动态交互性站点的强有力的服务器端脚本语言。',by:'菜鸟教程',url:'http://www.runoob.com',tags:['
- 网络空间安全(31)安全巡检
IT 青年
网安知识库网络空间安全
一、定义与目的定义:安全巡检是指由专业人员或特定部门负责,对各类设施、设备、环境等进行全面或重点检查,及时发现潜在的安全隐患或问题。目的:预防事故发生:通过定期的安全巡检,及时发现并解决潜在的安全隐患,从而预防事故的发生,减少不必要的损失。提高安全意识:安全巡检不仅是对设施和环境的检查,也是对员工安全意识的提醒和强化,有助于提高整体的安全意识。确保合规性:安全巡检可以确保设施和设备的运行符合相关法
- 编写教师类和学生类,并通过测试类创建对象进行测试
「已注销」
练java策略模式单例模式类
编写教师类和学生类,并通过测试类创建对象进行测试packagecom.company;publicclassStudent{//学生类privateStringname;//姓名privatebooleanisMale;//性别privateintage;//年龄privateStringmajor;//工作privateStringinterests;//兴趣publicStringgetNam
- Flutter Dart 面向对象编程全面解析
顾林海
Flutter系列教程flutter前端android
引言在Flutter开发中,Dart作为其编程语言,采用了面向对象的编程范式。面向对象编程(OOP)将数据和操作数据的方法封装在一起,形成对象,以提高代码的可维护性、可扩展性和可重用性。本文将详细介绍Dart面向对象编程的核心概念,包括类、对象、继承、多态、抽象类和接口等,并结合代码示例进行说明。1.类和对象类是对象的蓝图,它定义了对象的属性和方法。对象是类的实例,通过类可以创建多个不同的对象。代
- DataEase:一款国产开源数据可视化分析工具
不剪发的Tony老师
编程技能BI数据分析DataEase
DataEase是由飞致云开发的一款基于Web的数据可视化BI工具,支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,帮助用户快速分析业务数据并洞察其趋势,为企业的业务改进与优化提供支持。DataEase的优势在于:开源开放:零门槛,线上快速获取和安装,按月迭代;简单易用:极易上手,通过鼠标点击和拖拽即可完成分析;全场景支持:跨平台安装和多样化嵌入支持;安全分享:支持多种数据分享方式,确保数据
- 面向服务的诊断 SOVD(Service-Oriented Vehicle Diagnostics)AUTOSAR AP R24-11
aFakeProgramer
APAUTOSAR#APAUTOSAR新标准解读系列AUTOSARSOVD
AUTOSAR_AP_EXP_SOVD导读:ASAMSOVD与AUTOSAR自适应平台的集成ASAMSOVD简介:ASAMSOVD(面向服务的车辆诊断)是一个较新的诊断标准,旨在解决当前诊断协议(如UDS)面临的挑战。SOVD是一个自我解释的协议,不依赖于外部ODX数据描述,使用现代技术(如HTTPS)实现。它支持远程、接近和车内诊断用例,并包含UDS作为子集,同时支持HPC用例。SOVD与AUT
- 桌面上有多个球在同时运动,怎么实现球之间不交叉,即碰撞?
换个号韩国红果果
html小球碰撞
稍微想了一下,然后解决了很多bug,最后终于把它实现了。其实原理很简单。在每改变一个小球的x y坐标后,遍历整个在dom树中的其他小球,看一下它们与当前小球的距离是否小于球半径的两倍?若小于说明下一次绘制该小球(设为a)前要把他的方向变为原来相反方向(与a要碰撞的小球设为b),即假如当前小球的距离小于球半径的两倍的话,马上改变当前小球方向。那么下一次绘制也是先绘制b,再绘制a,由于a的方向已经改变
- 《高性能HTML5》读后整理的Web性能优化内容
白糖_
html5
读后感
先说说《高性能HTML5》这本书的读后感吧,个人觉得这本书前两章跟书的标题完全搭不上关系,或者说只能算是讲解了“高性能”这三个字,HTML5完全不见踪影。个人觉得作者应该首先把HTML5的大菜拿出来讲一讲,再去分析性能优化的内容,这样才会有吸引力。因为只是在线试读,没有机会看后面的内容,所以不胡乱评价了。
- [JShop]Spring MVC的RequestContextHolder使用误区
dinguangx
jeeshop商城系统jshop电商系统
在spring mvc中,为了随时都能取到当前请求的request对象,可以通过RequestContextHolder的静态方法getRequestAttributes()获取Request相关的变量,如request, response等。 在jshop中,对RequestContextHolder的
- 算法之时间复杂度
周凡杨
java算法时间复杂度效率
在
计算机科学 中,
算法 的时间复杂度是一个
函数 ,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的
字符串 的长度的函数。时间复杂度常用
大O符号 表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是
渐近 的,它考察当输入值大小趋近无穷时的情况。
这样用大写O()来体现算法时间复杂度的记法,
- Java事务处理
g21121
java
一、什么是Java事务 通常的观念认为,事务仅与数据库相关。 事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执行前的状
- Linux awk命令详解
510888780
linux
一. AWK 说明
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。
awk的处理文本和数据的方式:它逐行扫描文件,从第一行到
- android permission
布衣凌宇
Permission
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" ></uses-permission>允许读写访问"properties"表在checkin数据库中,改值可以修改上传
<uses-permission android:na
- Oracle和谷歌Java Android官司将推迟
aijuans
javaoracle
北京时间 10 月 7 日,据国外媒体报道,Oracle 和谷歌之间一场等待已久的官司可能会推迟至 10 月 17 日以后进行,这场官司的内容是 Android 操作系统所谓的 Java 专利权之争。本案法官 William Alsup 称根据专利权专家 Florian Mueller 的预测,谷歌 Oracle 案很可能会被推迟。 该案中的第二波辩护被安排在 10 月 17 日出庭,从目前看来
- linux shell 常用命令
antlove
linuxshellcommand
grep [options] [regex] [files]
/var/root # grep -n "o" *
hello.c:1:/* This C source can be compiled with:
- Java解析XML配置数据库连接(DOM技术连接 SAX技术连接)
百合不是茶
sax技术Java解析xml文档dom技术XML配置数据库连接
XML配置数据库文件的连接其实是个很简单的问题,为什么到现在才写出来主要是昨天在网上看了别人写的,然后一直陷入其中,最后发现不能自拔 所以今天决定自己完成 ,,,,现将代码与思路贴出来供大家一起学习
XML配置数据库的连接主要技术点的博客;
JDBC编程 : JDBC连接数据库
DOM解析XML: DOM解析XML文件
SA
- underscore.js 学习(二)
bijian1013
JavaScriptunderscore
Array Functions 所有数组函数对参数对象一样适用。1.first _.first(array, [n]) 别名: head, take 返回array的第一个元素,设置了参数n,就
- plSql介绍
bijian1013
oracle数据库plsql
/*
* PL/SQL 程序设计学习笔记
* 学习plSql介绍.pdf
* 时间:2010-10-05
*/
--创建DEPT表
create table DEPT
(
DEPTNO NUMBER(10),
DNAME NVARCHAR2(255),
LOC NVARCHAR2(255)
)
delete dept;
select
- 【Nginx一】Nginx安装与总体介绍
bit1129
nginx
启动、停止、重新加载Nginx
nginx 启动Nginx服务器,不需要任何参数u
nginx -s stop 快速(强制)关系Nginx服务器
nginx -s quit 优雅的关闭Nginx服务器
nginx -s reload 重新加载Nginx服务器的配置文件
nginx -s reopen 重新打开Nginx日志文件
- spring mvc开发中浏览器兼容的奇怪问题
bitray
jqueryAjaxspringMVC浏览器上传文件
最近个人开发一个小的OA项目,属于复习阶段.使用的技术主要是spring mvc作为前端框架,mybatis作为数据库持久化技术.前台使用jquery和一些jquery的插件.
在开发到中间阶段时候发现自己好像忽略了一个小问题,整个项目一直在firefox下测试,没有在IE下测试,不确定是否会出现兼容问题.由于jquer
- Lua的io库函数列表
ronin47
lua io
1、io表调用方式:使用io表,io.open将返回指定文件的描述,并且所有的操作将围绕这个文件描述
io表同样提供三种预定义的文件描述io.stdin,io.stdout,io.stderr
2、文件句柄直接调用方式,即使用file:XXX()函数方式进行操作,其中file为io.open()返回的文件句柄
多数I/O函数调用失败时返回nil加错误信息,有些函数成功时返回nil
- java-26-左旋转字符串
bylijinnan
java
public class LeftRotateString {
/**
* Q 26 左旋转字符串
* 题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。
* 如把字符串abcdef左旋转2位得到字符串cdefab。
* 请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。
*/
pu
- 《vi中的替换艺术》-linux命令五分钟系列之十一
cfyme
linux命令
vi方面的内容不知道分类到哪里好,就放到《Linux命令五分钟系列》里吧!
今天编程,关于栈的一个小例子,其间我需要把”S.”替换为”S->”(替换不包括双引号)。
其实这个不难,不过我觉得应该总结一下vi里的替换技术了,以备以后查阅。
1
所有替换方案都要在冒号“:”状态下书写。
2
如果想将abc替换为xyz,那么就这样
:s/abc/xyz/
不过要特别
- [轨道与计算]新的并行计算架构
comsci
并行计算
我在进行流程引擎循环反馈试验的过程中,发现一个有趣的事情。。。如果我们在流程图的每个节点中嵌入一个双向循环代码段,而整个流程中又充满着很多并行路由,每个并行路由中又包含着一些并行节点,那么当整个流程图开始循环反馈过程的时候,这个流程图的运行过程是否变成一个并行计算的架构呢?
- 重复执行某段代码
dai_lm
android
用handler就可以了
private Handler handler = new Handler();
private Runnable runnable = new Runnable() {
public void run() {
update();
handler.postDelayed(this, 5000);
}
};
开始计时
h
- Java实现堆栈(list实现)
datageek
数据结构——堆栈
public interface IStack<T> {
//元素出栈,并返回出栈元素
public T pop();
//元素入栈
public void push(T element);
//获取栈顶元素
public T peek();
//判断栈是否为空
public boolean isEmpty
- 四大备份MySql数据库方法及可能遇到的问题
dcj3sjt126com
DBbackup
一:通过备份王等软件进行备份前台进不去?
用备份王等软件进行备份是大多老站长的选择,这种方法方便快捷,只要上传备份软件到空间一步步操作就可以,但是许多刚接触备份王软件的客用户来说还原后会出现一个问题:因为新老空间数据库用户名和密码不统一,网站文件打包过来后因没有修改连接文件,还原数据库是好了,可是前台会提示数据库连接错误,网站从而出现打不开的情况。
解决方法:学会修改网站配置文件,大多是由co
- github做webhooks:[1]钩子触发是否成功测试
dcj3sjt126com
githubgitwebhook
转自: http://jingyan.baidu.com/article/5d6edee228c88899ebdeec47.html
github和svn一样有钩子的功能,而且更加强大。例如我做的是最常见的push操作触发的钩子操作,则每次更新之后的钩子操作记录都会在github的控制板可以看到!
工具/原料
github
方法/步骤
- ">的作用" target="_blank">JSP中
的作用
蕃薯耀
JSP中<base href="<%=basePath%>">的作用
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- linux下SAMBA服务安装与配置
hanqunfeng
linux
局域网使用的文件共享服务。
一.安装包:
rpm -qa | grep samba
samba-3.6.9-151.el6.x86_64
samba-common-3.6.9-151.el6.x86_64
samba-winbind-3.6.9-151.el6.x86_64
samba-client-3.6.9-151.el6.x86_64
samba-winbind-clients
- guava cache
IXHONG
cache
缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。
缓存的主要作用是暂时在内存中保存业务系统的数据处理结果,并且等待下次访问使用。在日常开发的很多场合,由于受限于硬盘IO的性能或者我们自身业务系统的数据处理和获取可能非常费时,当我们发现我们的系统这个数据请求量很大的时候,频繁的IO和频繁的逻辑处理会导致硬盘和CPU资源的
- Query的开始--全局变量,noconflict和兼容各种js的初始化方法
kvhur
JavaScriptjquerycss
这个是整个jQuery代码的开始,里面包含了对不同环境的js进行的处理,例如普通环境,Nodejs,和requiredJs的处理方法。 还有jQuery生成$, jQuery全局变量的代码和noConflict代码详解 完整资源:
http://www.gbtags.com/gb/share/5640.htm jQuery 源码:
(
- 美国人的福利和中国人的储蓄
nannan408
今天看了篇文章,震动很大,说的是美国的福利。
美国医院的无偿入院真的是个好措施。小小的改善,对于社会是大大的信心。小孩,税费等,政府不收反补,真的体现了人文主义。
美国这么高的社会保障会不会使人变懒?答案是否定的。正因为政府解决了后顾之忧,人们才得以倾尽精力去做一些有创造力,更造福社会的事情,这竟成了美国社会思想、人
- N阶行列式计算(JAVA)
qiuwanchi
N阶行列式计算
package gaodai;
import java.util.List;
/**
* N阶行列式计算
* @author 邱万迟
*
*/
public class DeterminantCalculation {
public DeterminantCalculation(List<List<Double>> determina
- C语言算法之打渔晒网问题
qiufeihu
c算法
如果一个渔夫从2011年1月1日开始每三天打一次渔,两天晒一次网,编程实现当输入2011年1月1日以后任意一天,输出该渔夫是在打渔还是在晒网。
代码如下:
#include <stdio.h>
int leap(int a) /*自定义函数leap()用来指定输入的年份是否为闰年*/
{
if((a%4 == 0 && a%100 != 0
- XML中DOCTYPE字段的解析
wyzuomumu
xml
DTD声明始终以!DOCTYPE开头,空一格后跟着文档根元素的名称,如果是内部DTD,则再空一格出现[],在中括号中是文档类型定义的内容. 而对于外部DTD,则又分为私有DTD与公共DTD,私有DTD使用SYSTEM表示,接着是外部DTD的URL. 而公共DTD则使用PUBLIC,接着是DTD公共名称,接着是DTD的URL.
私有DTD
<!DOCTYPErootSYST