这里记录的是我学习爬虫自己用到的一些东西,方便以后打开直接使用。我会不定期的往里面添加内容。
爬虫工具库-spidertools.cn
协程
模板1(通过loop):
async def download()passasync def main():# 创建任务队列tasks = []for..........{ # 使用for循环调用其它异步函数,添加到任务队列中asks.append(asyncio.create_task(download()))}# 打包提交队列await asyncio.gather(*tasks)if __name__ == '__main__':# 创建looploop = asyncio.get_event_loop()# 通过loop执行异步函数loop.run_until_complete(main())
模板2(通过asyncio):
async def download()passasync def main():# 创建任务队列tasks = []for..........{ # 使用for循环调用其它异步函数,添加到任务队列中asks.append(asyncio.create_task(download()))}# 等待任务结束await asyncio.wait(tasks)if __name__ == '__main__':asyncio.run(main())
python运行js模板
import execjs# 打开本地js文件,读取文件内容后通过execjs.compile函数将其转换成js代码暂存在ctx中
with open('baidu.js', 'r', encoding='utf-8') as f:ctx = execjs.compile(f.read())# 使用 ctx.call 函数来调用JS代码中的函数
# 第一个参数:想要调用的js中的函数
# 第二个参数:传入的值
res = ctx.call('hello', lis)