asyncio多进程+pyppeteer浏览器控制+pyquery解析实现爬虫demo(代码片段)

hellangels333 hellangels333     2022-12-06     618

关键词:

import asyncio
from pyppeteer import launch
from pyquery import PyQuery as pq
 
async def main():
   browser = await launch()
   page = await browser.newPage()
   await page.goto(https://dynamic2.scrape.cuiqingcai.com/)
   await page.waitForSelector(.item .name)
   j_result1 = await page.J(.item .name)
   j_result2 = await page.querySelector(.item .name)
   jj_result1 = await page.JJ(.item .name)
   jj_result2 = await page.querySelectorAll(.item .name)
   print(J Result1:, j_result1)
   print(J Result2:, j_result2)
   print(JJ Result1:, jj_result1)
   print(JJ Result2:, jj_result2)
   await browser.close()
 
asyncio.get_event_loop().run_until_complete(main())

 

0基础学爬虫爬虫基础之自动化工具pyppeteer的使用(代码片段)

...eer的Python版。Pyppeteer是一个使用Python语言封装的GoogleChrome浏览器的非官方API。它可以用来进行自动化测试、网站爬虫和数据抓取等工作。Pyppeteer的底层是通过调用Chrome浏览器的DevToolsProtocol接口来实现的。DevToolsProtocol是一个基于W... 查看详情

pyppeteer基本使用demo(代码片段)

...importlaunchimportasynciofromlxmlimportetreeasyncdefmain():#实例化一个浏览器,默认的是没有可视化界面bro=awaitlaunch(headless=False)#打开空白网页page=awaitbro.newPage()#在空白页发请求,这里访问一个动态加载的页面awaitpage.goto(‘http://quotes.toscrape.com/js... 查看详情

pyppeteer(代码片段)

...的时候有个麻烦事,就是环境的相关配置,得安装好相关浏览器,比如Chrome、Firefox等等,然后还要到官方网站去下载对应的驱动最重要的还需要安装对应的PythonSelenium库,确实是不是很方便,另外如果要做大规模部署的话,环境... 查看详情

爬虫学习pyppeteer(代码片段)

...的时候有个麻烦事,就是环境的相关配置,得安装好相关浏览器,比如Chrome、Firefox等等,然后还要到官方网站去下载对应的驱动,最重要的还需要安装对应的PythonSelenium库,确实是不是很方便,另外如果要做大规模部署的话,环... 查看详情

Python 多处理线程 Asyncio

】Python多处理线程Asyncio【英文标题】:PythonMultiproceesingThreadingAsyncio【发布时间】:2018-02-2006:37:32【问题描述】:我正在编写一个程序,我需要同时运行两个以上的进程,并且它们共享很少的数据。在尝试这样做时,我研究了线... 查看详情

pyppeteer(代码片段)

...的时候有个麻烦事,就是环境的相关配置,得安装好相关浏览器,比如Chrome、Firefox等等,然后还要到官方网站去下载对应的驱动,最重要的还需要安装对应的PythonSelenium库,确实是不是很方便,另外如果要做大规模部署的话,环... 查看详情

pyppeteer 中的 page.waitForTimeout()?

...7-3108:50:29【问题描述】:我有一个pyppeteer(不是puppeteer)浏览器,打开了许多页面,我想等待2秒,然后再在其中一些页面上执行其他操作。我尝试使用time.sleep()但它似乎阻止了所有页面的执行。pyppeteer中是否有page.w 查看详情

使用 asyncio 将 bash 作为 Python 的子进程运行,但 bash 提示被延迟

】使用asyncio将bash作为Python的子进程运行,但bash提示被延迟【英文标题】:RunningbashasasubprocesstoPythonusingasyncio,butbashpromptsaredelayed【发布时间】:2020-06-0811:00:31【问题描述】:我希望从Python的asyncio控制一个长时间运行的交互式Bash... 查看详情

corroutine RuntimeError中的Asyncio:没有正在运行的事件循环

】corroutineRuntimeError中的Asyncio:没有正在运行的事件循环【英文标题】:AsyncioincorroutineRuntimeError:norunningeventloop【发布时间】:2019-11-0822:54:22【问题描述】:我正在编写多进程代码,它可以在Python3.7中完美运行。然而,我希望其... 查看详情

为啥线程中的 python asyncio 进程在 Linux 上似乎不稳定?

】为啥线程中的pythonasyncio进程在Linux上似乎不稳定?【英文标题】:WhypythonasyncioprocessinathreadseemsunstableonLinux?为什么线程中的pythonasyncio进程在Linux上似乎不稳定?【发布时间】:2018-12-1917:47:44【问题描述】:我尝试从Qt应用程序... 查看详情

客户端容器|青训营笔记(代码片段)

浏览器架构浏览器架构演进单进程架构:所有模块运行在同一个进程里,包含网络、插件、JavaScript运行环境等多进程架构(现代浏览器的常用架构):主进程、网络进程、渲染进程、GPU进程、插件进程浏览器架构浏览器架构演进单... 查看详情

输出 asyncio 子进程调用的命令行?

】输出asyncio子进程调用的命令行?【英文标题】:outputthecommandlinecalledbyasynciosubprocess?【发布时间】:2021-06-2708:28:58【问题描述】:扩展问题问here,有没有办法找出创建asyncio子进程时传递的命令是什么?示例代码:-process=awaitasy... 查看详情

视图中的 Django asyncio 调用不起作用

】视图中的Djangoasyncio调用不起作用【英文标题】:Djangoasynciocallinviewsdoesn\'twork【发布时间】:2018-04-0409:45:00【问题描述】:我在这个问题上挣扎了很长时间。我正在尝试使用pyppeteer以pdf格式导出视图。这是我的功能:asyncdefexport... 查看详情

使用 asyncio 等待子进程的结果

】使用asyncio等待子进程的结果【英文标题】:Usingasynciotowaitforresultsfromsubprocess【发布时间】:2020-09-0718:56:13【问题描述】:我的Python脚本包含一个循环,该循环使用subprocess在脚本之外运行命令。每个子进程都是独立的。如果出... 查看详情

如何使用 asyncio 复杂地管理 shell 进程?

】如何使用asyncio复杂地管理shell进程?【英文标题】:howtocomplexmanageshellprocesseswithasyncio?【发布时间】:2016-10-1012:16:14【问题描述】:我想用python的asyncio模块跟踪守护进程的重启过程。所以我需要运行shell命令tail-f-n0/var/log/daemon.... 查看详情

asyncio:异步i/o事件循环和并发工具(持续跟新中)

...讲的比较少,这次根据Python3标准库书中实例来学习记录asyncio的使用。 asyncio模块提供了使用次饿成构建并发应用的工具。threading模块通过应用线程并发,mutilprocessing使用系统进程实现并发,asyncio则使用一个单线程单进程的... 查看详情

asyncio 子进程可以与 contextmanager 一起使用吗?

】asyncio子进程可以与contextmanager一起使用吗?【英文标题】:Canasynciosubprocessbeusedwithcontextmanager?【发布时间】:2019-08-0116:06:02【问题描述】:在python(3.7+)中,我尝试将子进程作为上下文管理器运行,同时异步流式传输潜在的大量... 查看详情

pyppeteer控制chromium在隐身模式下启用插件(代码片段)

基础启用隐身模式frompyppeteerimportlaunchasyncdefstart_browser():browser=awaitlaunch(**"headless":False)browser_context=awaitbrowser.createIncognitoBrowserContext()page=awaitbrowser_context.newPage()awaitpage.goto("http://www.baidu.com")awaitbrowser.close()return非隐身... 查看详情