前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用腾讯云TCB云函数抓取微信情报信息

使用腾讯云TCB云函数抓取微信情报信息

作者头像
薛定喵君
发布2020-10-15 11:03:06
2.1K0
发布2020-10-15 11:03:06
举报
文章被收录于专栏:薛定喵君薛定喵君

本文是 puppeteer 在云函数中的简单应用,主要功能为爬取网站上最新的微信产品相关信息。数据来源为新榜资讯。

# 程序思路

使用 puppeteer 打开新榜资讯 后点击微信 tab 等待内容加载,获取列表区的微信资讯。

# 核心代码

index.js

代码语言:javascript
复制
'use strict';
const puppeteer = require('puppeteer')

exports.main = async (event, context) => {
  const browser = await puppeteer.launch({
    headless: true,
    args: ['--no-sandbox', '--disable-setuid-sandbox'],
    dumpio: false,
  })
  const page = await browser.newPage()
  page.setUserAgent(
    'Mozilla/5.0 (Linux; Android 10; Redmi K30 Pro Build/QKQ1.191117.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.62 XWEB/2581 MMWEBSDK/200801 Mobile Safari/537.36',
  )
  await page.goto('https://www.newrank.cn/public/news.html?#', {
    waitUntil: 'networkidle0',
  })

  await page.click('.media-tags-more .row:last-child .float-left span:first-child')
  await page.waitFor(200)
  const wxInfoList = await page.evaluate(() => {
    const elements = Array.from(document.querySelectorAll('.media-main-left-news-list li'))
    return elements.map(s => {
      let a = s.getElementsByTagName('h3').item(0).getElementsByTagName('a').item(0)
      let txt = a.innerHTML
      let url = a.getAttribute('href')
      return { title: txt, url: url }
    })
  })
  await browser.close()
  return {list:wxInfoList}
}

# HTTP访问

HTTP访问服务地址 http://tcb.xuedingmiao.com/wx_news

# 返回结果

# 参考资料

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-10-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 程序思路
  • # 核心代码
  • # HTTP访问
  • # 返回结果
  • # 参考资料
相关产品与服务
云函数
云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档