[已解决]求助,如何获取 leetcode 的问题说明和函数内容?

以最新的 779 题为例,链接 https://leetcode.com/problems/k-th-symbol-in-grammar/description/

我想抓取题目描述和 go 函数。

我不懂前端,所以想请教大家该如何实现这个需求呢?

已邀请:

aQua - 80后IT男

赞同来自:

package main

import (
    "fmt"
    "log"

    "github.com/PuerkitoBio/goquery"
)

func getDescription() {
    doc, err := goquery.NewDocument("https://leetcode.com/problems/k-th-symbol-in-grammar/description/")
    if err != nil {
        log.Fatal(err)
    }

    doc.Find("meta[name=description]").Each(func(i int, selection *goquery.Selection) {
        fmt.Println(selection.Attr("content"))
    })
}

func main() {
    getDescription()
}

已经可以学会获取问题描述了,请问需要获取go 函数

aQua - 80后IT男

赞同来自:

package main

import (
    "context"
    "log"

    "github.com/chromedp/chromedp"
)

func main() {
    var err error

    // create context
    ctxt, cancel := context.WithCancel(context.Background())
    defer cancel()

    // create chrome instance
    c, err := chromedp.New(ctxt, chromedp.WithLog(log.Printf))
    if err != nil {
        log.Fatal(err)
    }

    // run task list
    var function string
    err = c.Run(ctxt, getFunction(&function))
    if err != nil {
        log.Println("Run error")
        log.Fatal(err)
    }

    // shutdown chrome
    err = c.Shutdown(ctxt)
    if err != nil {
        log.Println("Shutdown error")
        log.Fatal(err)
    }

    // wait for chrome to finish
    err = c.Wait()
    if err != nil {
        log.Println("Wait error")
        log.Fatal(err)
    }

    log.Println(function)
}

func getFunction(function *string) chromedp.Tasks {
    textarea := `//textarea`
    btn := `#question-detail-app > div > div:nth-child(3) > div > div > div.row.control-btn-bar > div > div > div > div > span.Select-arrow-zone`
    goSel := `#react-select-2--option-9`
    return chromedp.Tasks{
        chromedp.Navigate(`https://leetcode.com/problems/ ... tion/`),
        chromedp.Click(btn, chromedp.ByID),
        chromedp.Click(goSel, chromedp.ByID),
        chromedp.Text(textarea, function),
    }
}
2018/02/13 19:22:33 func kthGrammar(N int, K int) int {

}

第二个问题也解决了

要回复问题请先登录注册