From 99d6da4932772cbaedeec0c2ce1a41880db8c971 Mon Sep 17 00:00:00 2001 From: jiacheng-0 Date: Mon, 5 Oct 2020 20:21:34 +0800 Subject: [PATCH] add example codes in w8 workshop --- README.md | 5 +++ .../ai/preferred/crawler/VenomHandler.java | 11 ++++++ .../ai/preferred/crawler/example/Example.java | 36 +++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 src/main/java/ai/preferred/crawler/VenomHandler.java create mode 100644 src/main/java/ai/preferred/crawler/example/Example.java diff --git a/README.md b/README.md index d2e1f6b..091a551 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,11 @@ For more information, read the tutorial guide below. [![Coverage Status](https://coveralls.io/repos/github/PreferredAI/Venom/badge.svg)](https://coveralls.io/github/PreferredAI/Venom) [![Javadocs](https://www.javadoc.io/badge/ai.preferred/venom.svg)](https://www.javadoc.io/doc/ai.preferred/venom) +## Built for DSA +This GIT Repo has been built in IntelliJ with jdk 11.0.1. + +It should work from the initial pull. + ## Overview Check out our main [Venom](https://github.com/PreferredAI/Venom) page for more information. diff --git a/src/main/java/ai/preferred/crawler/VenomHandler.java b/src/main/java/ai/preferred/crawler/VenomHandler.java new file mode 100644 index 0000000..1e0194c --- /dev/null +++ b/src/main/java/ai/preferred/crawler/VenomHandler.java @@ -0,0 +1,11 @@ +package ai.preferred.crawler; + +import ai.preferred.venom.Session; +import ai.preferred.venom.Worker; +import ai.preferred.venom.job.Scheduler; +import ai.preferred.venom.request.Request; +import ai.preferred.venom.response.VResponse; + +public interface VenomHandler { + void handle(Request request, VResponse response, Scheduler scheduler, Session session, Worker worker); +} diff --git a/src/main/java/ai/preferred/crawler/example/Example.java b/src/main/java/ai/preferred/crawler/example/Example.java new file mode 100644 index 0000000..2d07d35 --- /dev/null +++ b/src/main/java/ai/preferred/crawler/example/Example.java @@ -0,0 +1,36 @@ +package ai.preferred.crawler.example; + + +import ai.preferred.venom.*; +import ai.preferred.venom.job.Scheduler; +import ai.preferred.venom.request.Request; +import ai.preferred.venom.request.VRequest; +import ai.preferred.venom.response.*; + +public class Example { + + private static class VenomHandler implements Handler { + + @Override + public void handle(Request request, VResponse response, Scheduler scheduler, Session session, Worker worker) { + + // String about = response.getJsoup().select(".sub-title b").text(); + // System.out.println("ABOUT: " + about); + + // String about = response.getJsoup().select(".info-title").text(); + // System.out.println("info-title: " + about); + + String selector = ".hestia-info p"; + String about = response.getJsoup().select(selector).text(); + System.out.println(selector + " : " + about); + } + } + + public static void main(String[] args) throws Exception { + try (Crawler c = Crawler.buildDefault().start()) { + Request r = new VRequest("https://venom.preferred.ai"); + c.getScheduler().add(r, new VenomHandler()); + } + } + +}