python爬虫爬取微信公众号的阅读数、喜爱数、文章标题和链接等信息

爬虫的步骤:
(1)申请自己的公众号
(2)使用fiddler抓包工具
(3)pycharm
(一)申请公众号
官网:微信公众平台
填入相关信息创建微信公众号
进入公众号界面如下:
在这里插入图片描述
找到新的创作-图文信息
在这里插入图片描述
在这里插入图片描述
在弹出的界面中查找公众号文章-输入公众号名称-确定
在这里插入图片描述
在这里插入图片描述
点击确认之后,进入公众号,可以查看相应文章。
在这里插入图片描述
右键单击空白处,选择检查-网络,显示界面如下:
在这里插入图片描述

在请求标头中获取cookieuser-agent
在这里插入图片描述
在这里插入图片描述

同时还需要获取Fakeidtoken
fakeid:是公众号独一无二的一个id
token:是自己的公众号独有的id

以上已经获取到了电脑端需要的4个重要参数:
Cookies、user-Agent 、fakeid 、token
爬取点赞数和阅读数:
在之前查找公众号的文章时,可以在相应信息中查找到文章的相关信息:
在这里插入图片描述
观察这些信息,可以在信息中找到公众号的文章标题,文章对应的链接
在这里插入图片描述
将文章链接复制到浏览器中,可以看到对应的公众号文章:
在这里插入图片描述
得到文章的链接之后,需要从链接中找到pass_ticket 、 appmsg_tojen 、 cookies 、user-Agent 、key。
通过fiddler抓包,得到这些参数
打开fiddler,选择过滤器
在这里插入图片描述
设置以下参数,点击action,设定只抓取关于微信公众相关的包
在这里插入图片描述
之后进入自己的微信客户端-选择公众号-查看历史信息-点开公众号的文章。
这时可以看到fiddler中出现一系列的包,依次点击抓取的包,在inspectors中查看以下信息,获取 pc微信端cookie 和user-agent
在这里插入图片描述
切换点击界面,可以看到如下信息:
在这里插入图片描述
可以从上面的界面中找到需要保存的参数:

更换公众号爬虫只需要更换PC微信的Key、 pass_ticket、 appmsg_tojen以及公众号的Fakeid。对某一公众号爬虫时,KEY大约20-30分钟会失效。可以再次打开fiddler重新进行获取。

贴一下我的代码:

# -*- coding: utf-8 -*-
import requests
import time
import json
from openpyxl import Workbook
import random

# 目标url
url = "https://mp.weixin.qq.com/cgi-bin/appmsg"

Cookie = "自己的cookies"
# 使用Cookie,跳过登陆操作
headers = {
   
    "Cookie": Cookie,
    "User-Agent": "自己的user-agent",
}

"""
需要提交的data
以下个别字段是否一定需要还未验证。
注意修改yourtoken,number
number表示从第number页开始爬取,为5的倍数,从0开始。如0、5、10……
token可以使用Chrome自带的工具进行获取
fakeid是公众号独一无二的一个id,等同于后面的__biz
"""
token = "自己公众号的token"#公众号
fakeid = "Mzk0NzI5NDc5MA%3D%3D"#公众号对应的id
type = '9'
#爬虫网址中的参数
data1 = {
   
    "token": token,
    "lang": "zh_CN",
    "f": "json",
    "ajax": "1",
    "action": "list_ex",
    "begin": 
<think>嗯,用户想了解Excel中的VLOOKUP函的用法含义。首先,我需要回忆一下VLOOKUP的基本结构。VLOOKUP是垂直查找函,用于在表格的首列查找指定的值,然后返回该行中指定列的据。它的四个参分别是查找值、表格范围、列索引号匹配模式。 接下来,我得确认每个参的具体作用。第一个参是lookup_value,也就是用户要查找的值,比如产品ID或者姓名。第二个参是table_array,即查找的范围,这里要注意的是,查找值必须位于这个范围的第一列,否则函无法正确工作。第三个参是col_index_num,也就是用户想要返回的据在表格范围中的第几列,这个列是从表格范围的第一列开始算起的,不是整个工作表的列。第四个参是range_lookup,决定是精确匹配还是近似匹配,通常用FALSE或0来指定精确匹配,避免错误。 然后,用户可能需要一个具体的例子来理解如何使用。比如,假设有一个产品价格表,用户想根据产品ID查找对应的价格。这时候,VLOOKUP就可以在ID列查找,然后返回价格列的据。同时,要提醒用户注意表格范围最好使用绝对引用,比如$A$2:$C$100,这样在拖动公式时范围不会变化。 可能遇到的问题也需要考虑。比如,如果查找值不在表格的第一列,或者列索引号超过了表格的列,函会返回错误。此外,据格式不一致也可能导致问题,比如查找值是字,而表格中是文本格式的字,这时候需要统一格式。还有,当出现#N/A错误时,可能是查找值不存在,或者匹配模式设置不正确,需要检查参是否正确。 用户可能还会问到如何避免常见的错误,比如部分据匹配出错的情况。这时候需要检查是否有多余的空格,或者据格式不一致,或者表格范围没有锁定导致拖动时偏移。此外,XLOOKUP作为VLOOKUP的升级版,可能在某些情况下更方便,比如可以向左查找或者返回多列据,这也是可以提及的内容。 最后,整理步骤,从基础语法到参说明,再到具体案例,逐步引导用户理解如何使用VLOOKUP函。同时,提供常见错误解决方法,帮助用户在实际应用中避免问题。如果有必要,还可以比较VLOOKUP其他查找函的区别,比如HLOOKUP或XLOOKUP,但根据用户的问题,主要集中在VLOOKUP本身即可。</think>### Excel VLOOKUP函详解 #### 一、基础语法与参说明 VLOOKUP函的语法为: $$=VLOOKUP(lookup\_value, table\_array, col\_index\_num, [range\_lookup])$$ 包含4个参: 1. **lookup_value**(必填):要查找的值(如单元格引用或具体值) 2. **table_array**(必填):包含据的表格范围(必须包含查找列返回列) 3. **col_index_num**(必填):返回值所在列的序号(从table_array第一列开始计) 4. **range_lookup**(可选):匹配类型 - `TRUE`/`1`:近似匹配(默认值,需据升序排列) - `FALSE`/`0`:精确匹配(常用选项) [^1][^2] #### 二、使用步骤演示(工资表查询案例) 假设需要根据员工编号查询工资: 1. 建立查询单元格(如`B12`) 2. 输入公式: ```excel =VLOOKUP(A12, $A$2:$D$100, 4, 0) ``` - `A12`:待查询的员工编号 - `$A$2:$D$100`:锁定据区域(绝对引用) - `4`:返回第4列(工资列) - `0`:精确匹配 [^2][^3] #### 三、常见错误与解决方法 | 错误现象 | 原因 | 解决方案 | |---------|------|---------| | #N/A | 查找值不存在 | 检查据源或改用`IFERROR`容错 | | #REF! | 列序号超出范围 | 确认col_index_num ≤ 表格列 | | 部分匹配失败 | 据格式不一致 | 统一值/文本格式 | | 结果错位 | 表格未锁定 | 使用`$`符号固定区域引用 | [^3][^4] #### 四、进阶技巧 1. **多条件查询**: 使用辅助列合并多个条件字段 ```excel =VLOOKUP(A2&B2, $D$2:$F$100, 3, 0) ``` 2. **通配符匹配**: `"*"`匹配任意字符,`"?"`匹配单个字符 ```excel =VLOOKUP("张*", $A$2:$C$100, 3, 0) ``` 3. **跨表查询**: 引用其他工作表据 ```excel =VLOOKUP(A2, Sheet2!$A$2:$D$100, 4, 0) ``` [^1][^4]
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值