Skip to content

Commit

Permalink
Merge pull request #2 from gsxhnd/fix/crawl-create-dir
Browse files Browse the repository at this point in the history
fix: dir not create
  • Loading branch information
gsxhnd authored Mar 19, 2023
2 parents a9f69bd + da0c814 commit de5a598
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 10 deletions.
2 changes: 1 addition & 1 deletion .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
"showLog": true,
"debugAdapter": "dlv-dap",
"program": "${workspaceRoot}/",
"args": ["code", "--proxy=http://127.0.0.1:7890", "TEST-001"],
"args": ["jav_code", "--proxy=http://127.0.0.1:7890", "PCDE-016"],
"output": "${workspaceRoot}/build/garage",
"trace": "verbose",
"cwd": "${workspaceRoot}"
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# CHANGELOG

## Version 0.0.7

- FIX: 爬虫部分没有提前创建下载数据

## Version 0.0.6

- CHORE: 编译去除路径
Expand Down
5 changes: 3 additions & 2 deletions cmd/flag.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ import (
)

var (
proxyFlag = &cli.StringFlag{Name: "proxy", Usage: "代理配置,如: http://127.0.0.1:1080"}
siteFlag = &cli.StringFlag{
proxyFlag = &cli.StringFlag{Name: "proxy", Usage: "代理配置,如: http://127.0.0.1:1080"}
destDirFlag = &cli.StringFlag{Name: "dest_dir", Usage: "设置下载目录", Value: "./javbus"}
siteFlag = &cli.StringFlag{
Name: "site",
Usage: "选择爬取数据的网站,支持网站(javbus)",
Destination: nil,
Expand Down
18 changes: 14 additions & 4 deletions cmd/jav_code.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package cmd

import (
"path"

"github.com/gsxhnd/garage/crawl"
"github.com/gsxhnd/garage/utils"
"github.com/urfave/cli/v2"
Expand All @@ -14,14 +16,22 @@ var javCodeCmd = &cli.Command{
Flags: []cli.Flag{
proxyFlag,
siteFlag,
destDirFlag,
},
Action: func(ctx *cli.Context) error {
var (
newLogger = utils.GetLogger()
code = ctx.Args().Get(0)
proxy = ctx.String("proxy")
logger = utils.GetLogger()
code = ctx.Args().Get(0)
proxy = ctx.String("proxy")
destDir = "./javs"
)
c := crawl.NewCrawlClient(newLogger)

if err := utils.MkdirDestDir(path.Join(destDir, code)); err != nil {
logger.Panic("目录创建失败, Error: " + err.Error())
return err
}

c := crawl.NewCrawlClient(logger)
_ = c.SetProxy(proxy)
c.StarCrawlJavbusMovie(code)
return nil
Expand Down
9 changes: 7 additions & 2 deletions crawl/javbus.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ package crawl
import (
"bytes"
"encoding/json"
"fmt"
"io"
"io/ioutil"
"os"
"strings"

"github.com/gocolly/colly/v2"
"go.uber.org/zap"
)

func (c2 *Client) StarCrawlJavbusMovie(code string) {
Expand Down Expand Up @@ -58,15 +58,20 @@ func (c2 *Client) DownloadInfo(code string) (*JavMovie, error) {
star := element.Attr("title")
data.Stars = append(data.Stars, star)
})

// e.ForEach("#magnet-table , tr", func(i int, h *colly.HTMLElement) {
// fmt.Println(i)
// fmt.Println(h)
// })
})
err := c2.collector.Visit(c2.javbusUrl + code)
if err != nil {
fmt.Println("err:", err)
return nil, err
}
saveData, _ := json.Marshal(&data)
err = ioutil.WriteFile("./javs/"+code+"/info.json", saveData, os.ModeAppend)
if err != nil {
c2.logger.Error("", zap.Error(err))
return nil, err
} else {
return &data, nil
Expand Down
2 changes: 1 addition & 1 deletion utils/dest.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ func MkdirDestDir(dir_name string) error {
_, err := os.Stat(dir_name)
if err != nil {
if os.IsNotExist(err) {
err = os.Mkdir(dir_name, os.ModePerm)
err = os.MkdirAll(dir_name, os.ModePerm)
if err != nil {
return err
}
Expand Down

0 comments on commit de5a598

Please sign in to comment.