iPad上使用Python抓取数据

本文介绍了如何在iPad上克服限制,使用Python和Web Inspector、SelectorGadget等工具抓取网页数据。通过Deepnote Jupyter笔记本编写代码,解决无法加载部分Python包的问题,详细阐述了选择元素、创建CSS选择器、解析数据并存储到JSON文件的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍

iPad的主要限性:

  1. 与电脑浏览器不同,我们没办法使用正规浏览器扩展
  2. 虽然我们可以安装Carnet、a-Shell、iSH应用使用Python,大部分CPython包我们都不能加载,比如说Pyppeteer(我们会使用Pyppeteer抓取数据)

关于第一个限性,为了查看网页的DOM还执行JavaScript脚本,我们首先需要下载Web Inspector和Makeover Safari扩展(从App Store可以下载)。该selectorgadget.com的脚本将帮助我们选择网页上的元素:

(function(){
    var s = document.createElement('div');
    s.innerHTML = 'Loading...';
    s.style.color='black';
    s.style.padding='20px';
    s.style.position='fixed';
    s.style.zIndex='9999';
    s.style.fontSize='3.0em';
    s.style.border='2px solid black';
    s.style.right='40px';
    s.style.top='40px';
    s.setAttribute('class','selector_gadget_loading');
    s.style.background='white';
    document.body.appendChild(s);
    s=document.createElement('script');
    s.setAttribute('type','text/javascript');
    s.setAttribute('src', 'https://dv0akt2986vzh.cloudfront.net/unstable/lib/selectorgadget_edge.js');
    document.body.appendChild(s);
})();

单击您希望选择器匹配的页面元素(它将变为绿色)。SelectorGadget将为该元素生成一个最小的CSS选择器,并高亮显示(黄色)选择器匹配的所有内容。现在单击高亮显示的图元以拒绝它(红色),或者单击未高亮显示的元素以添加它(绿色)。通过这个选择和拒绝的过程,SelectorGadget可以帮助您根据自己的需求设计出完美的CSS选择器。

关于第二个限

### 使用Fiddler捕获微信小程序的HTTP流量 #### 启动并配置Fiddler 为了准备捕捉来自微信小程序的HTTP/HTTPS流量,在启动Fiddler之后,需确认已激活了监听状态。这可以通过点击菜单中的`文件(File)`选项下的`捕获数据(Capture Traffic)`来实现,也可以通过按下键盘上的`F12`键快速开启此功能[^1]。 #### 设置手机与电脑连接同一Wi-Fi网络 确保用于运行微信小程序的移动设备和安装有Fiddler软件的计算机处于同一个局域网内非常重要。这是因为Fiddler作为中间代理服务器工作时,依赖于两者之间稳定的网络通信环境[^2]。 #### 修改移动设备的网络设置指向Fiddler所在PC 接着要在智能手机或其他终端设备上调整其无线网络参数,具体操作为更改DNS地址至执行Fiddler应用程序那台主机的IP地址;对于iOS系统而言,则还需额外设定HTTP代理为手动模式,并输入相同的目标机器IP以及默认端口号8888(这是Fiddler的标准侦听端口)。完成上述步骤后保存变更以便生效。 #### 安装根证书以支持HTTPS拦截 由于现代大多数互联网服务都采用了SSL/TLS加密协议传输敏感信息,因此如果想要查看或修改这些经过加密处理的数据流的话,就需要让客户端信任由Fiddler自动生成的安全凭证——即所谓的“根证书”。对于Android平台可以直接访问<http://ipv4.fiddler:8888>下载相应格式(.der)的CA证书文件并通过设置->安全->受信任的凭据导入;而iPhone/iPad用户则应前往Safari浏览器打开同样的网址获取适用于苹果生态系统的.cer版本,并按照提示完成安装过程。 #### 开始监控指定的小程序活动 当一切准备工作就绪以后就可以正常启动微信应用加载所需测试的小程序页面啦!此时返回到Fiddler界面就能看到实时更新的一系列会话列表项,其中包含了该实例发起的所有GET/POST请求详情及其响应内容摘要等有用资料供开发者进一步研究分析之用了。 ```python # Python代码仅作示意用途,实际操作无需编写任何脚本 import requests url = "https://example.com/api/data" response = requests.get(url) print(response.status_code) print(response.text) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值