【Linux&PHP】PHP在安装好后安装扩展模块
我们在Linux中安装好了PHP并成功启动使用后,因为一开始安装不知道需要什么模块导致后面需要安装一些需要的模块不知道如何安装其实方法也挺简单的和安装方法略同 无需重新编译安装12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061cd到你php的程序编译目录下的ext目录cd /opt/php-7.4.16/ext/#查看你需要安装的模块[root@localhost ext]# lsbcmath ctype dom ffi gd iconv ldap mysqlnd openssl pdo_dblib pdo_odbc phar reflection skeleton sodium sysvmsg tokenizer xmlwriter zlibbz2 curl enchant ...
【Typecho插件】Typecho插件那些事(三)
概述在前面的文章中我们学习了如何编写一个简单的基本的插件,也编写了一个简单的页面访问IP地址位置记录插件。有时候我们需要自己插入数据这时候我们发现不知道怎么才能实现根据编辑框内容插入数据到数据库,今天我们就来学习插件中的FORM表单。其实FORM表单我们第一篇文章的时候讲到过了但没有具体讲今天我们就来具体讲讲FORM。 一、Typecho_Widget_Helper_Form对象这个对象呢是Typecho自己的一个FORM接口用于我们编写FORM表单的。下面的代码是实例化对象 12$form = new Typecho_Widget_Helper_Form(action,method,enctype)//这个实例化接受三个参数action我们待会在讲,method是提交的方式GET或者POST两种方式,enctype是编码方式这里,第一个参数是必须填的其余两个默认是get和application/x-www-form-urlencoded 下面是该对象的一些基本的方法 123456789101112131415161718192021222324252627282930313...
【Typecho插件】Typecho插件那些事之自己动手实现一个访客信息记录
概述在前两篇文章中我们学习了如何编写一个插件和连接数据库,这两个学会了基本简单的插件都可以自己编写了。今天我们就来编写一个基本的插件一个IP地址记录插件,就是当有人访问你网站的时候会自动把访问者IP和访问页和IP所对应的地址机录下来。让我们start吧。 一、创建插件构造文件首先创建一个文件夹命名为“Visits”,在里面新建一个Plugin.php并在文件中创建一个类名称为“Visits_Plugin”实现Typecho_Plugin_Interface接口,分别编写接口的函数。这里我就不多说了不会的看我之前的文章。到这里我们的文件和构造都搞好了开始编写功能。 二、数据库处理首先获取数据库处理器和前缀,在文件中创建一个静态的函数用于创建数据库这里先定义一下数据库需要存什么数据字段名称是什么。我定义了几个字段分别是id,ip,time,location,page代表id,ip地址,访问时间,ip对应的位置信息,访问了哪一页定义好后开始写SQL语句如果不会写的可以用工具生成sql语句,开始创建数据库 12345678910111213141516171819202122232425...
【Typecho插件】Typecho插件那些事(二)
概要在上一篇文章【Typecho】Typecho插件那些事(一)中我们分析了HelloWorld插件的源码,那么有些同学是不是以为懂了上篇文章我们就可以开始写一个插件了呢?答案是可以但是只能写一些不用怎么存储数据的插件但插件一般都需要存储信息那怎么整呢?这里我们就得谈谈Typecho提供的操作数据库的类了 一、如何获取数据库处理器获取数据库处理器的方法我目前为止只知道两个 1234//第一种$db = Typecho_DB::get();//第二种$db //这个变量 就是一个数据库处理器 二、数据库处理器的常用方法在Typecho_Db对象中有一下这些方法用于增改删查数据库这里为了下面方法的演示假设数据库有个books表,表中有三个字段分别是id,name,author 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182...
【Typecho插件】Typecho插件那些事(一)
概要有时候我们需要一些功能而Typecho中没有我们想要的功能,但Typecho提供了插件化这个功能在源码中的usr/plugins目录中我们就可以通过编写Typecho插件来达到自己想要的功能。下面我们来从零开始编写我们的第一个Typecho插件吧! 一、文件结构和代码构造首先编写插件需了解插件的文件结构和代码构造编写一个插件只需要一个Plugin.php文件即可并没有文件结构,文件结构是我们自己定义的编写一个插件的时候如果所有代码都放在一起会感觉到很杂乱所以这时候我们就可以新建一个PHP文件来帮助我们把代码友好化。 二、HelloWorld源码分析官方给了一个HelloWorld的插件样板我们来分析一下这个插件的构造在这个插件中只有一个Plugin.php没有其他的东西我们来打开这个文件进行分析打开文件后有很多注释这是Typecho为了让我们看懂而编写的注释我们就按照他的注释来分析,印入眼帘的是下面这段代码 123456789if (!defined('__TYPECHO_ROOT_DIR__')) exit; //这是判断目录是否定义固定就好/** * ...
【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据导出篇
【Python爬虫】Scrapy模块爬取微信公众号历史内容——抓包篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据分析篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——Python实战篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据导出篇 前面我们学习了如何抓包、分析、python实战但是唯一的缺点是打印出来的数据分析起来比较困难。今天我们就学习如何导出文件格式为excel的文件可以使用wps officems office进行更可观的数据分析及排序如图所示开源链接:链接
【Python爬虫】Scrapy模块爬取微信公众号历史内容——Python实战篇
【Python爬虫】Scrapy模块爬取微信公众号历史内容——抓包篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据分析篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——Python实战篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据导出篇 前两章节中我们学习了如何抓包和分析数据这节我们将开始进行Python实战打开Pycharmallowed_domains这个呢是只允许爬取在这个域名下的内容,填的是微信公众号的域名都一样的start_urls这个就是我们前面提取出来的链接把链接的offset改为0就是从第一页开始爬起parse这个函数是自动生成的我们需要在这里编写爬虫回调回调写完后win+r打开运行输入cmd 输入你文件所在的盘符然后cd到你文件目录如我是路径是e:pythonspio先输入e:回车然后cd pythonspio回车就行了输入scrapy crawl name运行爬虫try包围是因为当key失效会报错
【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据分析篇
【Python爬虫】Scrapy模块爬取微信公众号历史内容——抓包篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据分析篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——Python实战篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据导出篇 打开后打开setting文件把ROBOTSTXT_OBEY设置成TrueDOWNLOAD_DELAY = 0.5 这里是每次发送包后的延迟如图然后我们对上个文章中获取到的链接进行分析这里我用火狐浏览器因为火狐浏览器自带了格式化json数据的功能can_msg_continue这个为1就是还有数据为0则没有数据了msg_count数据的条数next_offset这个值-1就是得到下一个offset的值general_msg_list是一个json数据我们需要对他进行格式化这也是我们最需要的数据先用sublime text对这个数据的替换成空然后打开在线Json格式化 进行格式化分析在把格式化的内容粘贴回sublime进行分析 上图中可以看到datetime就是一个10位的时间戳时间和数据是分开...
【Python爬虫】Scrapy模块爬取微信公众号历史内容——抓包篇
【Python爬虫】Scrapy模块爬取微信公众号历史内容——抓包篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据分析篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——Python实战篇【Python爬虫】Scrapy模块爬取微信公众号历史内容——数据导出篇 首先下载Fiddler并设置https捕抓设置方法打开fd点击Tools->Options->HTTPS勾选选项出现弹窗选择yes或者是如图打开微信公众号打开微信公众号历史记录后滑动页面到底部fd中会捕抓到一个https的请求双击它点击raw有一个链接可以直接点击浏览器打开浏览器打开后是这样子的其中osffset是当前位置,count就是数量开始offset为0后以10递增count10就代表每次获取十条数目 开始用Python编程爬虫创建scrapy工程 scrapy startproject projectnameSpider创建scrapy爬虫文件scrapy genspider projectname 公众号域名用Pycharm打开
【Python模块】Urllib的使用
我们首先了解一下 Urllib 库,它是 Python 内置的 HTTP 请求库,也就是说我们不需要额外安装即可使用发送简单的get请求 1234567#python2import urllib2response = urllib2.urlopen('http://www.baidu.com')#python3import urllib.requestres = urllib.request.urlopen('http://www.baidu.com') 1234567import urllib.requesta = urllib.request.urlopen('http://www.baidu.com')print(a.read().decode('gbk', 'ignore'))print(a.status)#状态码print(a.getheaders())#获取所有header返回元组列表print(a.getheader('Set-Cookie'))...