记一次批量定时抓取微信公众号文章的实现

优采云 发布时间: 2020-08-09 15:40

  记一次批量定时抓取微信公众号文章的实现

  抓取前的说明和打算

  本次抓取的选择的语言是java,本文章不会将整个工程的全部代码全部贴出,只会提供核心代码和抓取思路的说明。

  数据的抓取

  抓取文章的来源为搜狗陌陌网站,网站如下图。

  

  抓取的思路如下

  一般抓取微信公众号的文章都是以微信公众号的id为关键字 ,我们可以通过url+ keyword的方式直接跳转到想要抓取公众号页面,keyword即为想要搜索微信公众号的名称或则是id;

  // 搜狗微信搜索链接入口

String sogou_search_url = "http://weixin.sogou.com/weixin?type=1&query="

+ keyword + "&ie=utf8&s_from=input&_sug_=n&_sug_type_=";

  为了防止网站对爬虫的初步拦截,我们可以使用Selenium (浏览器自动化测试框架)来伪装自己的爬虫,我们使用的chrome,这里须要注意自己的chrome版本与使用的webdriver的版本是对应的;

   ChromeOptions chromeOptions = new ChromeOptions();

// 全屏,为了接下来防抓取做准备

chromeOptions.addArguments("--start-maximized");

System.setProperty("webdriver.chrome.driver", chromedriver);

WebDriver webDriver = new ChromeDriver(chromeOptions);

  到达微信公众号列表页面,如下图,获取微信公众号链接。

  

<p> // 获取当前页面的微信公众号列表

List weixin_list = webDriver

.findElements(By.cssSelector("div[class='txt-box']"));

// 获取进入公众号的链接

String weixin_url = "";

for (int i = 0; i

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线