iawia002 / lux

👾 Fast and simple video download library and CLI tool written in Go
MIT License
27.42k stars 2.96k forks source link

issue when parse some ytb url #29

Closed bigtan closed 6 years ago

bigtan commented 6 years ago
annie -d -x http://127.0.0.1:1080 https://www.youtube.com/watch?v=TUk7q9zRoJI

URL:         https://www.youtube.com/watch?v=TUk7q9zRoJI&gl=US&hl=en&has_verified=1&bpctr=9999999999
Method:      GET
Headers:     http.Header{
    "Accept-Charset":  {"UTF-8,*;q=0.5"},
    "Accept-Encoding": {"gzip,deflate,sdch"},
    "Accept-Language": {"en-US,en;q=0.8"},
    "User-Agent":      {"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36"},
    "Accept":          {"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"},
    "Referer":         {"https://www.youtube.com/watch?v=TUk7q9zRoJI&gl=US&hl=en&has_verified=1&bpctr=9999999999"},
}
Status Code: 200

URL:         https://r4---sn-npoe7ne7.googlevideo.com/videoplayback?sparams=dur%2Cei%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cexpire&signature=B754D49187CD23D2AD340227686D873154B0C283.0DB8821996F763497F09C13525D362A495CA4CA5&ip=47.88.154.139&requiressl=yes&ratebypass=yes&source=youtube&c=WEB&mn=sn-npoe7ne7%2Csn-npoeenez&mime=video%2Fmp4&id=o-AMuUfY5VzMbHNV3_l_6_4yXtSlIGhaHtf_mZqWbnYtiP&initcwndbps=1495000&ipbits=0&expire=1521570336&mm=31%2C29&fvip=4&ms=au%2Crdu&ei=wP2wWvPYDMiWqQGa04XYCA&pl=22&itag=22&mt=1521548651&dur=204.103&key=yt6&lmt=1506724426906456&mv=m
Method:      GET
Headers:     http.Header{
    "Accept-Encoding": {"gzip,deflate,sdch"},
    "Referer":         {"https://www.youtube.com/watch?v=TUk7q9zRoJI"},
    "Accept-Language": {"en-US,en;q=0.8"},
    "User-Agent":      {"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36"},
    "Accept":          {"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"},
    "Accept-Charset":  {"UTF-8,*;q=0.5"},
}
Status Code: 200

   Site:   YouTube youtube.com
  Title:   冯提莫《我想对你说baby》 "I want to say to you, baby" Feng timo Edition
   Type:   video
Quality:   hd720
   Size:   18.94 MiB (19860947 Bytes)

 0 B / 18.94 MiB [--------------------------------------------------------------------------------------------]   0.00%panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x38 pc=0x626529]

goroutine 1 [running]:
github.com/iawia002/annie/utils.FileSize(0xc04220a300, 0x55, 0xc04200bfb6)
        D:/Workplace/golang/src/github.com/iawia002/annie/utils/utils.go:43 +0x59
github.com/iawia002/annie/downloader.VideoData.urlSave(0x703f18, 0x13, 0xc042044f00, 0x51, 0xc04205c390, 0x1, 0x1, 0x12f0dd3, 0x6fc2bb, 0x5, ...)
        D:/Workplace/golang/src/github.com/iawia002/annie/downloader/downloader.go:72 +0x9b
github.com/iawia002/annie/downloader.VideoData.Download(0x703f18, 0x13, 0xc042044f00, 0x51, 0xc04205c390, 0x1, 0x1, 0x12f0dd3, 0x6fc2bb, 0x5, ...)
        D:/Workplace/golang/src/github.com/iawia002/annie/downloader/downloader.go:135 +0xb17
github.com/iawia002/annie/extractors.Youtube(0xc04200a300, 0x2b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
        D:/Workplace/golang/src/github.com/iawia002/annie/extractors/youtube.go:87 +0x5c7
main.main()
        D:/Workplace/golang/src/github.com/iawia002/annie/main.go:57 +0x416

问题应该出现在这个地方:https://github.com/iawia002/annie/blob/master/utils/utils.go#L52

iawia002 commented 6 years ago

是这样的,windows 文件名称不能带双引号,你这个文件名恰好有双引号,我在 mac 下面是没有问题的,我马上修复一下

iawia002 commented 6 years ago

@bigtan 0.5.0

bigtan commented 6 years ago

thanks