位置: 编程技术 - 正文

PHP写微信公众号文章页采集方法(php推送微信公众号客户消息)

编辑:rootadmin

推荐整理分享PHP写微信公众号文章页采集方法(php推送微信公众号客户消息),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php推送微信公众号客户消息,微信公众号开发php源码,php写微信公众号怎么写,微信公众号开发php源码,php 微信公众号,php公众号推送完整示例,php公众号开发,php公众号开发,内容如对您有帮助,希望把文章链接给更多的朋友!

通过搜狗搜索采集公众号历史消息有几个问题:

1、有验证码;

2、历史消息列表只有最近条群发内容;

3、文章地址是有有效期的;

4、据说批量采集还要换ip;

通过我前面文章的方法就没有这些问题,虽然采集系统搭建不如传统采集器写个规则去爬就可以了那么简单。但是一次搭建好之后批量采集的效率还是可以的。而且采集的文章地址是永久有效的,并且可以采集到一个公众号所有的历史消息。我们还是从一个公众号文章的链接地址开始看:

1、从微信右上角菜单复制到的链接地址:

1)原文内容:

原文内容是包含在一个<div id='js_content'></div>标签中的,通过php代码获取:

正则的开头识别<div id='js_content'>,结尾识别<script/iUs,匹配到之后前面再补充一个<div id='js_content'>;我的正则匹配水平有限,只能写成这样的了。希望有高人能指点更好的正则匹配方法。

另外注意:这个匹配规则会可能在一段时间之后有变化。这篇文章会尽量保持更新。如果你根据我的文章制作了采集系统之后,当某一天失效了,别忘了回来再看看文章是否有更新。

2)内容处理:

通过上面的方法我们获得了文章内容的html,但是你将文章内容显示出来之后就会发现,图片和视频不能正常显示。因为这个html还需要一些加工:

PHP写微信公众号文章页采集方法(php推送微信公众号客户消息)

首先是图片,微信文章中的<img>标签中的src属性全部都用了data-src属性代替。只有在显示的时候才会被替换过来。所以我们也有两个方案,将源代码直接替换过来,或者用js在显示时候再替换。下面我先介绍直接替换html的方法:

然后是视频,视频的显示不正常,经过长期测试后发现只要替换一个页面地址就能解决,过程就不说了,直接说结果:

通过这两个替换之后,文章内容html中的图片和视频就都正常了。

3) 公众号相关信息:

通过本专栏之前的文章,介绍了我们使用微信客户端,任意打开一个公众号的历史消息页之后。系统从数据库中识别biz的值,发现数据库中没有记录,就会插入一条新的纪录。之后的采集队列就会定期根据这个biz来获取这个公众号的历史消息列表。

但是我们只获得了这个公众号的biz,公众号的名称,头像这两个重要信息还是没有获取到。主要原因是历史消息页面中没有这两个信息。但是我们可以从文章页面中获取到。

在微信文章页面html的底部,有一些js的变量赋值的代码,通过正则匹配之后我们就可以获得这两个公众号的信息:

通过这两个正则匹配,我们就能获取到公众号的头像和昵称,然后根据文章地址中的biz,可以保存到对应的微信号数据表中。

3、文章的保存和处理

前面的代码已经将文章内容获取到变量中了。如何保存其实每个人也许都有自己的想法。我这里介绍一下我的保存内容的方法:

将文章内容的html以数据库id为文件名保存成html文件,以biz字段为目录。

以上代码是一个标准的php建立文件夹保存文件的代码,大家可以根据自己的实际情况安排保存方法。

在这之后我们就可以在自己的服务器上得到一个html文件,内容就是公众号的文章内容。我们可以从浏览器中打开看一下。这时你也许会发现图片防盗链了!无法正常显示!包括数据库中保存的文章封面图,公众号的头像都是防盗链的。

别急,这个问题很好解决,只需要将图片也保存到自己的服务器,无非是将来会占用自己的服务器空间和带宽。

图片防盗链的原理是当图片在网页中显示的时候,图片服务器会检测到引用这张图片的服务器域名,当发现服务器域名不包含

如何采集微信公众号历史消息页 采集微信文章和采集网站内容一样,都需要从一个列表页开始。而微信文章的列表页就是公众号里的查看历史消息页。现在网络上的其它微信采集器有

php提取身份证号码中的生日日期以及验证是否为成年人的函数 php提取身份证号码中的生日日期以及确定是否成年的一个函数。可以同时确定位和位的身份证,经本人亲测,非常好用,分享函数代码如下:php//用ph

php猜单词游戏 直接复制本地运行就可以了phpsession_start();header("Content-type:text/html;charset=utf-");$url='

标签: php推送微信公众号客户消息

本文链接地址:https://www.jiuchutong.com/biancheng/275969.html 转载请保留说明!

上一篇:用好anyproxy提高公众号文章采集效率

下一篇:如何采集微信公众号历史消息页(公众号采集文章手机操作)

  • 印花税滞纳金如何计算日期
  • 申报个税时怎么获取个税专项附加扣除
  • 生产成本和销售费用是对应账户吗
  • 红冲以前年度的费用怎么做账
  • 水电费专用发票税率
  • 电信宽带个人和公司办收费标准
  • 事业单位的会计制度是什么
  • 借应交税费销项税额贷未交增值税
  • 以前年度成本多入了怎样调整
  • 企业取得该项资产时实际发生的支出
  • 商场促销的税务处理怎么做?
  • 有限合伙企业注册资金要求
  • 将产品转为本企业使用
  • 餐馆的前期投资预算
  • 捐赠个人支出需要交纳个税吗?
  • 加油站的印花税计税金额
  • 房地产开发企业应交税费科目
  • 建筑业小规模纳税人异地开票
  • 金税盘费用到期
  • 税收分类编码选错了会罚款么
  • 高新技术企业注销后退回补贴
  • 现金折扣应不应计入成本
  • 固定资产捐赠的增值税
  • 赠送的商品怎么入账
  • 汇款退回重新汇到银行卡
  • 光伏安装工程公司有哪些
  • 印花税退款分录
  • Win11 Dev Build 22000.65开发预览版推送(附更新修复已知问题汇总)
  • 鸿蒙密码锁设置密码的方法
  • 挑主板要注意什么
  • 当月发工资当月报个税吗
  • 合同印花税的5个税目
  • 农民工劳动报酬权救济制度存在的问题
  • 在国内和国外
  • php get post
  • 增值税专用发票的税率是多少啊
  • vue 图片转base64格式的方法
  • php100 jquery教程
  • 长期股权投资初始计量会计科目
  • 关于机动车的法律定义
  • 银行对账单冲正的单据在财务软件哪里找
  • (WebFlux)004、WebFilter踩坑记录
  • 购买工业用地
  • 所有者权益包括哪些会计科目
  • 成立一般纳税人公司流程
  • mysql在表中添加一个新的属性
  • mysql5.5远程连接
  • 培训机构财务怎么做账
  • 个人去税务局开劳务发票要交多少税
  • 社保稳岗补贴怎么查询
  • 印花税计税依据和税率
  • 样机 研发费用归集与核算
  • 稳岗补贴操作流程
  • 企业所得税汇算清缴调增的项目有哪些
  • 卖二手车买卖
  • 发票金额跟实际金额为什么不一样
  • 研发费用计入营业成本还能加计扣除吗
  • 小规模纳税人怎么申报个人所得税
  • 去年的增值税专用发票可以重开吗
  • 劳务发票成本怎么做账
  • 企业的管理人员应该是互补型
  • 安装mysql失败原因
  • mysql的操作
  • 通过T-SQL语句实现数据库备份与还原的代码
  • win7 win8.1双系统安装教程
  • linux ultrasphinx Anonymous modules have no name to be referenced by
  • CentOS(x86_64)下PHP安装memcache扩展问题解决方法分享
  • sxs.exe病毒
  • win7安装远程桌面组件
  • win7无法打开windows功能
  • 您的服务器不支持此服务
  • 使用linux的电脑
  • unity绘制曲线
  • css渲染规则
  • node js打包exe
  • jquery设置元素css
  • Python的二维列表存储
  • 2020年个体税收政策
  • 房产税税源编号
  • 耕地占用税免税项目需要计入计税依据吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设