mirror of
https://github.com/ytdl-org/youtube-dl.git
synced 2026-03-02 23:07:04 -05:00
openload.co extractor not working #8572
Closed
opened 2026-02-21 03:14:08 -05:00 by deekerman
·
326 comments
No Branch/Tag specified
master
pull/30733/head
gh-pages
df-fmt-ext-patch
dlp-fifa-backport
df-test-cleanup
pull/29816/head
download-server
totalwebcasting
rtmp_test
2024.07.11-nightly
2021.12.17
2021.06.06
2021.05.16
2021.04.26
2021.04.17
2021.04.07
2021.04.01
2021.03.31
2021.03.25
2021.03.14
2021.03.03
2021.03.02
2021.02.22
2021.02.10
2021.02.04.1
2021.02.04
2021.01.24.1
2021.01.24
2021.01.16
2021.01.08
2021.01.03
2020.12.31
2020.12.29
2020.12.26
2020.12.22
2020.12.14
2020.12.12
2020.12.09
2020.12.07
2020.12.05
2020.12.02
2020.11.29
2020.11.26
2020.11.24
2020.11.21.1
2020.11.21
2020.11.19
2020.11.18
2020.11.17
2020.11.12
2020.11.01.1
2020.11.01
2020.09.20
2020.09.14
2020.09.06
2020.07.28
2020.06.16.1
2020.06.16
2020.06.06
2020.05.29
2020.05.08
2020.05.03
2020.03.24
2020.03.08
2020.03.06
2020.03.01
2020.02.16
2020.01.24
2020.01.15
2020.01.01
2019.12.25
2019.11.28
2019.11.22
2019.11.05
2019.10.29
2019.10.22
2019.10.16
2019.09.28
2019.09.12.1
2019.09.12
2019.09.01
2019.08.13
2019.08.02
2019.07.30
2019.07.27
2019.07.16
2019.07.14
2019.07.12
2019.07.02
2019.06.27
2019.06.21
2019.06.08
2019.05.20
2019.05.11
2019.04.30
2019.04.24
2019.04.17
2019.04.07
2019.04.01
2019.03.18
2019.03.09
2019.03.01
2019.02.18
2019.02.08
2019.01.30.1
2019.01.30
2019.01.27
2019.01.24
2019.01.23
2019.01.17
2019.01.16
2019.01.10
2019.01.02
2018.12.31
2018.12.17
2018.12.09
2018.12.03
2018.11.23
2018.11.18
2018.11.07
2018.11.03
2018.10.29
2018.10.05
2018.09.26
2018.09.18
2018.09.10
2018.09.08
2018.09.01
2018.08.28
2018.08.22
2018.08.04
2018.07.29
2018.07.21
2018.07.10
2018.07.04
2018.06.25
2018.06.19
2018.06.18
2018.06.14
2018.06.11
2018.06.04
2018.06.02
2018.05.30
2018.05.26
2018.05.18
2018.05.09
2018.05.01
2018.04.25
2018.04.16
2018.04.09
2018.04.03
2018.03.26.1
2018.03.26
2018.03.20
2018.03.14
2018.03.10
2018.03.03
2018.02.26
2018.02.25
2018.02.22
2018.02.11
2018.02.08
2018.02.04
2018.02.03
2018.01.27
2018.01.21
2018.01.18
2018.01.14
2018.01.07
2017.12.31
2017.12.28
2017.12.23
2017.12.14
2017.12.10
2017.12.02
2017.11.26
2017.11.15
2017.11.06
2017.10.29
2017.10.20
2017.10.15.1
2017.10.15
2017.10.12
2017.10.07
2017.10.01
2017.09.24
2017.09.15
2017.09.11
2017.09.10
2017.09.02
2017.08.27.1
2017.08.27
2017.08.23
2017.08.18
2017.08.13
2017.08.09
2017.08.06
2017.07.30.1
2017.07.23
2017.07.15
2017.07.09
2017.07.02
2017.06.25
2017.06.23
2017.06.18
2017.06.12
2017.06.05
2017.05.29
2017.05.26
2017.05.23
2017.05.18.1
2017.05.18
2017.05.14
2017.05.09
2017.05.07
2017.05.01
2017.04.28
2017.04.26
2017.04.17
2017.04.16
2017.04.15
2017.04.14
2017.04.11
2017.04.09
2017.04.03
2017.04.02
2017.03.26
2017.03.24
2017.03.22
2017.03.20
2017.03.16
2017.03.15
2017.03.10
2017.03.07
2017.03.06
2017.03.05
2017.03.02
2017.02.28
2017.02.27
2017.02.24.1
2017.02.24
2017.02.22
2017.02.21
2017.02.17
2017.02.16
2017.02.14
2017.02.11
2017.02.10
2017.02.07
2017.02.04.1
2017.02.04
2017.02.01
2017.01.31
2017.01.29
2017.01.28
2017.01.25
2017.01.24
2017.01.22
2017.01.18
2017.01.16
2017.01.14
2017.01.10
2017.01.08
2017.01.05
2017.01.02
2016.12.31
2016.12.22
2016.12.20
2016.12.18
2016.12.15
2016.12.12
2016.12.09
2016.12.01
2016.11.27
2016.11.22
2016.11.18
2016.11.14.1
2016.11.14
2016.11.08.1
2016.11.08
2016.11.04
2016.11.02
2016.10.31
2016.10.30
2016.10.26
2016.10.25
2016.10.21.1
2016.10.21
2016.10.19
2016.10.16
2016.10.12
2016.10.07
2016.10.02
2016.09.27
2016.09.24
2016.09.19
2016.09.18
2016.09.15
2016.09.11.1
2016.09.11
2016.09.08
2016.09.04.1
2016.09.04
2016.09.03
2016.08.31
2016.08.28
2016.08.24.1
2016.08.24
2016.08.22
2016.08.19
2016.08.17
2016.08.13
2016.08.12
2016.08.10
2016.08.07
2016.08.06
2016.08.01
2016.07.30
2016.07.28
2016.07.26.2
2016.07.26.1
2016.07.26
2016.07.24
2016.07.22
2016.07.17
2016.07.16
2016.07.13
2016.07.11
2016.07.09.2
2016.07.09.1
2016.07.09
2016.07.07
2016.07.06
2016.07.05
2016.07.03.1
2016.07.03
2016.07.02
2016.07.01
2016.06.30
2016.06.27
2016.06.26
2016.06.25
2016.06.23.1
2016.06.23
2016.06.22
2016.06.20
2016.06.19.1
2016.06.19
2016.06.18.1
2016.06.18
2016.06.16
2016.06.14
2016.06.12
2016.06.11.3
2016.06.11.2
2016.06.11.1
2016.06.11
2016.06.05
2016.06.04
2016.06.03_tmp
2016.06.03
2016.06.02
2016.05.30.2
2016.05.30.1
2016.05.30
2016.05.21.2
2016.05.21.1
2016.05.21
2016.05.16
2016.05.10
2016.05.01
2016.04.24
2016.04.19
2016.04.13
2016.04.06
2016.04.05
2016.04.01
2016.03.27
2016.03.26
2016.03.25
2016.03.18
2016.03.14
2016.03.06
2016.03.01
2016.02.27
2016.02.22
2016.02.13
2016.02.10
2016.02.09.1
2016.02.09
2016.02.05.1
2016.02.05
2016.02.04
2016.02.01
2016.01.31
2016.01.29
2016.01.27
2016.01.23
2016.01.15
2016.01.14
2016.01.09
2016.01.01
2015.12.31
2015.12.29
2015.12.23
2015.12.21
2015.12.18
2015.12.13
2015.12.10
2015.12.09
2015.12.06
2015.12.05
2015.11.27.1
2015.11.27
2015.11.24
2015.11.23
2015.11.21
2015.11.19
2015.11.18
2015.11.15
2015.11.13
2015.11.10
2015.11.02
2015.11.01
2015.10.24
2015.10.23
2015.10.18
2015.10.16
2015.10.13
2015.10.12
2015.10.09
2015.10.06.2
2015.10.06.1
2015.10.06
2015.09.28
2015.09.22
2015.09.09
2015.09.03
2015.08.28
2015.08.23
2015.08.16.1
2015.08.16
2015.08.09
2015.08.06.1
2015.08.06
2015.07.28
2015.07.21
2015.07.18
2015.07.07
2015.07.04
2015.06.25
2015.06.15
2015.06.04.1
2015.06.04
2015.05.29
2015.05.20
2015.05.15
2015.05.10
2015.05.04
2015.05.03
2015.04.28
2015.04.26
2015.04.17
2015.04.09
2015.04.03
2015.03.28
2015.03.24
2015.03.18
2015.03.15
2015.03.09
2015.03.03.1
2015.03.03
2015.02.28
2015.02.26.2
2015.02.26.1
2015.02.26
2015.02.24.2
2015.02.24.1
2015.02.24
2015.02.23.1
2015.02.23
2015.02.21
2015.02.20
2015.02.19.3
2015.02.19.2
2015.02.19.1
2015.02.19
2015.02.18.1
2015.02.18
2015.02.17.2
2015.02.17.1
2015.02.17
2015.02.16.1
2015.02.16
2015.02.11
2015.02.10.5
2015.02.10.4
2015.02.10.3
2015.02.10.2
2015.02.10.1
2015.02.10
2015.02.09.3
2015.02.09.2
2015.02.09.1
2015.02.09
2015.02.08
2015.02.06
2015.02.04
2015.02.03.1
2015.02.03
2015.02.02.5
2015.02.02.4
2015.02.02.3
2015.02.02.2
2015.02.02.1
2015.02.02
2015.02.01
2015.01.30.2
2015.01.30.1
2015.01.30
2015.01.25
2015.01.23.4
2015.01.23.3
2015.01.23.2
2015.01.23.1
2015.01.23
2015.01.22
2015.01.16
2015.01.15.1
2015.01.15
2015.01.11
2015.01.10.2
2015.01.10.1
2015.01.10
2015.01.09.2
2015.01.09.1
2015.01.09
2015.01.08
2015.01.07.2
2015.01.07.1
2015.01.07
2015.01.05.1
2015.01.05
2015.01.04
2015.01.03
2015.01.02
2015.01.01
2014.12.17.2
2014.12.17.1
2014.12.17
2014.12.16.2
2014.12.16.1
2014.12.16
2014.12.15
2014.12.14
2014.12.13.1
2014.12.13
2014.12.12.7
2014.12.12.6
2014.12.12.5
2014.12.12.4
2014.12.12.3
2014.12.12.2
2014.12.12.1
2014.12.12
2014.12.11
2014.12.10.3
2014.12.10.2
2014.12.10.1
2014.12.10
2014.12.06.1
2014.12.06
2014.12.04.2
2014.12.04.1
2014.12.04
2014.12.03
2014.12.01
2014.11.27
2014.11.26.4
2014.11.26.3
2014.11.26.2
2014.11.26.1
2014.11.26
2014.11.25.1
2014.11.25
2014.11.24
2014.11.23.1
2014.11.23
2014.11.21.1
2014.11.21
2014.11.20.1
2014.11.20
2014.11.16
2014.11.15.1
2014.11.15
2014.11.14
2014.11.13.3
2014.11.13.2
2014.11.13.1
2014.11.13
2014.11.12.1
2014.11.12
2014.11.09
2014.11.04
2014.11.02.1
2014.11.02
2014.10.30
2014.10.29
2014.10.27
2014.10.26.2
2014.10.26.1
2014.10.26
2014.10.25
2014.10.24
2014.10.23
2014.10.18
2014.10.15
2014.10.13
2014.10.12
2014.10.05.2
2014.10.05.1
2014.10.05
2014.10.02
2014.09.29.2
2014.09.29.1
2014.09.29
2014.09.28.1
2014.09.28
2014.09.25
2014.09.24.1
2014.09.24
2014.09.22.1
2014.09.22
2014.09.19
2014.09.18
2014.09.16.1
2014.09.16
2014.09.15.1
2014.09.15
2014.09.14.3
2014.09.14.2
2014.09.14.1
2014.09.14
2014.09.12
2014.09.10.1
2014.09.10
2014.09.06
2014.09.04.3
2014.09.04.2
2014.09.04.1
2014.09.04
2014.09.01.2
2014.09.01.1
2014.09.01
2014.08.29
2014.08.28.2
2014.08.28.1
2014.08.28
2014.08.27.1
2014.08.27
2014.08.26
2014.08.25.3
2014.08.25.2
2014.08.25.1
2014.08.25
2014.08.24.6
2014.08.24.5
2014.08.24.4
2014.08.24.3
2014.08.24.2
2014.08.24.1
2014.08.24
2014.08.23
2014.08.22.3
2014.08.22.2
2014.08.22.1
2014.08.22
2014.08.21.3
2014.08.21.2
2014.08.21.1
2014.08.21
2014.08.10
2014.08.05
2014.08.02.1
2014.08.02
2014.07.30
2014.07.25.1
2014.07.25
2014.07.24
2014.07.23.2
2014.07.23.1
2014.07.23
2014.07.22
2014.07.21
2014.07.20.2
2014.07.20.1
2014.07.20
2014.07.15
2014.07.11.3
2014.07.11.2
2014.07.11.1
2014.07.11
2014.07.10
2014.06.26
2014.06.25
2014.06.24.1
2014.06.24
2014.06.19
2014.06.16
2014.06.09
2014.06.07
2014.06.04
2014.06.02
2014.05.31.4
2014.05.31.3
2014.05.31.2
2014.05.31.1
2014.05.31
2014.05.30.1
2014.05.30
2014.05.19
2014.05.17
2014.05.16.1
2014.05.16
2014.05.13
2014.05.12
2014.05.05
2014.04.30.1
2014.04.30
2014.04.21.6
2014.04.21.5
2014.04.21.4
2014.04.21.3
2014.04.21.2
2014.04.21.1
2014.04.21
2014.04.19
2014.04.13
2014.04.11.2
2014.04.11.1
2014.04.11
2014.04.07.4
2014.04.07.3
2014.04.07.2
2014.04.07.1
2014.04.07
2014.04.04.7
2014.04.04.6
2014.04.04.5
2014.04.04.4
2014.04.04.2
2014.04.04.3
2014.04.04.1
2014.04.04
2014.04.03.3
2014.04.03.2
2014.04.03.1
2014.04.03
2014.04.02
2014.04.01.3
2014.04.01.2
2014.04.01.1
2014.04.01
2014.03.30.1
2014.03.30
2014.03.29
2014.03.28
2014.03.27.1
2014.03.27
2014.03.25.1
2014.03.25
2014.03.24.5
2014.03.24.4
2014.03.24.3
2014.03.24.2
2014.03.24.1
2014.03.24
2013.03.24.2
2013.03.24.1
2013.03.24
2014.03.23
2014.03.21.5
2014.03.21.4
2014.03.21.3
2014.03.21.2
2014.03.21.1
2014.03.21
2014.03.20
2014.03.18.1
2014.03.18
2014.03.17
2014.03.12
2014.03.11
2014.03.10
2014.03.07.1
2014.03.07
2014.03.06
2014.03.04.2
2014.03.04.1
2014.03.04
2014.03.03
2014.02.28
2014.02.27.1
2014.02.27
2014.02.26
2014.02.25.1
2014.02.25
2014.02.24
2014.02.22.1
2014.02.22
2014.02.21.1
2014.02.21
2014.02.20
2014.02.19.1
2014.02.19
2014.02.17
2014.02.13
2014.02.10
2014.02.08.2
2014.02.08.1
2014.02.08
2014.02.06.3
2014.02.06.2
2014.02.06.1
2014.02.06
2014.02.05
2014.02.04.1
2014.02.04
2014.02.03.1
2014.02.03
2014.01.30.2
2014.01.30.1
2014.01.30
2014.01.29
2014.01.28.1
2014.01.28
2014.01.27.2
2014.01.27.1
2014.01.27
2014.01.23.4
2014.01.23.3
2014.01.23.2
2014.01.23.1
2014.01.23
2014.01.22.5
2014.01.22.4
2014.01.22.3
2014.01.22.2
2014.01.22.1
2014.01.22
2014.01.21.1
2014.01.21
2014.01.20
2014.01.17.2
2013.01.17.1
2013.01.17
2014.01.08
2014.01.07.5
2014.01.07.4
2014.01.07.3
2014.01.07.2
2014.01.07.1
2014.01.07
2014.01.06.1
2014.01.06
2014.01.05.6
2014.01.05.5
2014.01.05.4
2014.01.05.3
2014.01.05.1
2014.01.05
2014.01.03
2013.12.26
2013.12.23.4
2013.12.23.3
2013.12.23.2
2013.12.23.1
2013.12.23
2013.12.20
2013.12.17.2
2013.12.17.1
2013.12.17
2013.12.16.7
2013.12.16.6
2013.12.16.5
2013.12.16.4
2013.12.16.3
2013.12.16.2
2013.12.16.1
2013.12.16
2013.12.11.2
2013.12.11.1
2013.12.11
2013.12.10
2013.12.09.4
2013.12.09.3
2013.12.09.2
2013.12.09.1
2013.12.09
2013.12.08.1
2013.12.08
2013.12.04
2013.12.03
2013.12.02
2013.11.29
2013.11.28.1
2013.11.28
2013.11.26
2013.11.25.3
2013.11.25.2
2013.11.25.1
2013.11.25
2013.11.24.1
2013.11.24
2013.11.22.2
2013.11.22.1
2013.11.22
2013.11.21
2013.11.20
2013.11.19
2013.11.18.1
2013.11.18
2013.11.17
2013.11.15.1
2013.11.15
2013.11.13
2013.11.11
2013.11.07
2013.11.06.1
2013.11.06
2013.11.03
2013.11.02
2013.10.30
2013.10.29
2013.10.28
2013.10.23.2
2013.10.23.1
2013.10.23
2013.10.22
2013.10.18.2
2013.10.18.1
2013.10.18
2013.10.17
2013.10.15
2013.10.09
2013.10.07
2013.10.06
2013.10.04
2013.10.01.1
2013.10.01
2013.09.29
2013.09.24.2
2013.09.24.1
2013.09.24
2013.09.20.1
2013.09.20
2013.09.17
2013.09.16
2013.09.12
2013.11.09
2013.09.10
2013.09.07
2013.09.06.1
2013.09.06
2013.09.05
2013.09.04
2013.08.30
2013.08.29
2013.08.28.1
2013.08.28
2013.08.27
2013.08.23
2013.08.22
2013.08.21
2013.08.17
2013.08.15
2013.08.14
2013.08.09
2013.08.08.1
2013.08.08
2013.08.02
2013.07.31
2013.07.25.2
2013.07.25.1
2013.07.25
2013.07.24.2
2013.07.24.1
2013.07.24
2013.07.23.1
2013.07.23
2013.07.19
2013.07.18
2013.07.17.1
2013.07.17
2013.07.12
2013.07.11
2013.07.10
2013.07.08.1
2013.07.08
2013.07.07.01
2013.07.07
2013.07.05
2013.07.04
2013.07.02
2013.06.34.4
2013.06.34.3
2013.06.34.2
2013.06.34.1
2013.06.34
2013.06.33
2013.06.32
2013.06.31
2013.06.30
2013.06.29
2013.06.28
2013.06.27
2013.06.26
2013.06.25
2013.06.23
2013.06.21
2013.05.23
2013.05.14
2013.05.13
2013.05.10
2013.05.07
2013.05.06
2013.05.05
2013.05.04
2013.05.01
2013.04.31
2013.04.30
2013.04.28
2013.04.27
2013.04.22
2013.04.21
2013.04.18
2013.04.11
2013.04.03
2013.03.29
2013.02.25
2013.02.22
2012.02.22
2013.02.19
2013.02.18
2013.02.02
2013.02.01
2013.01.28
2013.01.27
2013.01.13
2013.01.12
2012.12.99
2013.01.11
2013.01.08
2013.01.06
2013.01.02
2012.12.11
2012.11.29
2012.11.28
2012.11.27
2012.11.17
2012.10.09
2012.09.27
2012.02.27
2012.02.26
2012.01.08b
2012.01.08
2012.01.05
2011.12.18
2011.12.15
2011.12.08
2011.11.23
2011.11.22
2011.11.21
2011.10.19
2011.09.30
2011.09.27
2011.09.18c
2011.09.18b
2011.09.18
2011.09.17
2011.09.16
2011.09.15
2011.09.14
2011.09.13
2011.08.04
2011.03.29
2011.02.25c
2011.02.25b
2011.02.25
2011.01.30
2010.12.09
2010.11.19
2010.10.24
2010.10.03
2010.08.04
2010.07.24
2010.07.22
2010.07.14
2010.06.06
2010.04.04
2010.04.03
2010.04.02
2010.03.13
2010.03.07
2010.02.13
2010.01.19
2010.01.06
2010.01.05
2009.12.26
2009.09.13
2009.09.08
2009.08.08
2009.06.29
2009.05.30
2009.05.25
2009.05.23
2009.05.13
2009.05.11
2009.04.25
2009.04.06
2009.03.28
2009.03.03
2009.02.07
2009.01.31
2008.11.01
2008.10.16
2008.09.20
2008.08.09
2008.07.22
Labels
Clear labels
DRM
Good first issue
account-needed
broken-IE
bug
build/update
cant-reproduce
clarification-needed
documentation
duplicate
external-bugs
fixed
geo-restricted
gh-pages
help-wanted
hls
incomplete
invalid
linux
mpd
not-a-bug
nsfw
offtopic
out-of-scope
outdated-version
patch-available
pending-fixes
php
postprocessors
question
regression
request
request
site-support-request
site-update-request
spam
subtitles
test-needed
tv-provider-account-needed
windows
won't fix
yt-dlp
No labels
DRM
Good first issue
account-needed
broken-IE
bug
build/update
cant-reproduce
clarification-needed
documentation
duplicate
external-bugs
fixed
geo-restricted
gh-pages
help-wanted
hls
incomplete
invalid
linux
mpd
not-a-bug
nsfw
offtopic
out-of-scope
outdated-version
patch-available
pending-fixes
php
postprocessors
question
regression
request
request
site-support-request
site-update-request
spam
subtitles
test-needed
tv-provider-account-needed
windows
won't fix
yt-dlp
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
starred/youtube-dl#8572
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @byteholding on GitHub (Aug 22, 2016).
youtube-dl --get-url --verbose https://openload.co/embed/kUEfGclsU9o/
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--get-url', u'--verbose', u'https://openload.co/embed/kUEfGclsU9o/']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.08.22
[debug] Python version 2.6.6 - Linux-2.6.32-642.1.1.el6.x86_64-x86_64-with-centos-6.8-Final
[debug] exe versions: ffmpeg 0.6.5, ffprobe 0.6.5
[debug] Proxy map: {}
ERROR: Unable to extract link image; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 691, in extract_info
ie_result = ie.extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 347, in extract
return self._real_extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 62, in _real_extract
r'<img[^>]+id="linkimg"[^>]+src="([^"]+)"', webpage, 'link image')
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 650, in _search_regex
raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract link image; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
@yokrysty commented on GitHub (Aug 23, 2016):
they've changed the video link obfuscation to a very simple method, lol
openload video link extraction script
http://pastebin.com/PJ4SFqBM
@yan12125 commented on GitHub (Aug 23, 2016):
A nice hit! @yokrysty Did you write this script? If so could you declare this script as Public Domain or UNLICENSE so that it can be used in youtube-dl?
@yokrysty commented on GitHub (Aug 23, 2016):
yes i wrote it now in 5 min :), yes you can use it
@yokrysty commented on GitHub (Aug 23, 2016):
before decrypting the data make sure you replace all the html entities
i updated the script with html replacing
@yan12125 commented on GitHub (Aug 23, 2016):
Many thanks @yokrysty Would you like to be listed on AUTHORS for the openload algorithm?
@yokrysty commented on GitHub (Aug 23, 2016):
i don't mind :)
@yan12125 commented on GitHub (Aug 23, 2016):
OK Anyway thanks for the code :)
@byteholding commented on GitHub (Aug 23, 2016):
Thank you, too.
Could anyone explain me, how i change the new code to my exist youtube-dl setups on my servers. The release 2016.08.22 didn't have the updated code.
@yan12125 commented on GitHub (Aug 23, 2016):
Before a new version is released, you can download https://github.com/rg3/youtube-dl/archive/master.zip and unzip it.
@byteholding commented on GitHub (Aug 23, 2016):
Amazing! Thank you very much ;)
@ghost commented on GitHub (Aug 28, 2016):
we're getting pigeons again
@yan12125 commented on GitHub (Aug 28, 2016):
Confirmed.
@yokrysty commented on GitHub (Aug 28, 2016):
@yan12125 the change is not major: at the last char code in the array add 2 then convert it to char
http://pastebin.com/xXZv59Jc
@yan12125 commented on GitHub (Aug 28, 2016):
Many thanks again! Updated.
@ghost commented on GitHub (Aug 28, 2016):
They updated their site again. Add 1 instead of 2. Maybe this gets changed throughout the day?
@yan12125 commented on GitHub (Aug 28, 2016):
Or, they are watching this repo today. It's working two hours ago.
@yokrysty commented on GitHub (Aug 28, 2016):
then do it like this
oldown.py http://pastebin.com/zW4sGyZd
aa_decode.py http://pastebin.com/jFtB8dhi
:)
@yan12125 commented on GitHub (Aug 29, 2016):
Just tried it. The latest commit is still working. Doesn't it work for you? @yokrysty
@e2iplayer commented on GitHub (Aug 29, 2016):
This is not working because the number added to last char code is variable.
At now it is 1 not 2.
@yan12125 commented on GitHub (Aug 29, 2016):
I've changed 2 to 1 in
98908bc, and it's still working. Feel free to leave a comment if its algorithm is changed again.@yokrysty commented on GitHub (Aug 29, 2016):
@yan12125 use my method from above where I read the number that needs to be added from the javascript
@yan12125 commented on GitHub (Aug 29, 2016):
I see. Will integrate it the next time
var_valis changed.@ghost commented on GitHub (Aug 29, 2016):
seems that they're now migrating to the canvas method, but on a different host.
@ghost commented on GitHub (Aug 29, 2016):
Its a 3 now.
@byteholding commented on GitHub (Aug 30, 2016):
yes, its a 3!
@ghost commented on GitHub (Aug 30, 2016):
seems like @yokrysty's method might be a better plan since it reads the var_val, however using it's own list of emoji's to decrypt might be less robust since a small edit to the list would break the script.
@yokrysty commented on GitHub (Aug 30, 2016):
check out this method http://pastebin.com/QZRcczrN xd
dependencies:
pip install pyside
pip install ghost.py
@NitroXenon commented on GitHub (Sep 6, 2016):
@yokrysty I think it's the best approach since Openload updates their obfuscate algorithm frequently.
@ghost commented on GitHub (Sep 6, 2016):
@NitroXenon maybe if we could do this without adding two dependencies to youtube-dl.
@NitroXenon commented on GitHub (Sep 6, 2016):
@bigmittens Alright. Take a look at this. This is working currently
https://github.com/tknorris/script.module.urlresolver/blob/master/lib/urlresolver/plugins/ol_gmu.py
@NitroXenon commented on GitHub (Sep 6, 2016):
But it uses GPLv3
@yokrysty commented on GitHub (Sep 6, 2016):
@NitroXenon its basically my method that i posted 9 days ago, scroll up
@ghost commented on GitHub (Sep 6, 2016):
@gdkchan please help us 😩
@yan12125 commented on GitHub (Sep 7, 2016):
@yokrysty http://pastebin.com/jFtB8dhi and http://pastebin.com/zW4sGyZd now gives penguins.
@gdkchan commented on GitHub (Sep 7, 2016):
@bigmittens Help with what? Well they are not using AAEncode on the obfuscation of the main HiddenURL decoding JavaScript function, that's why the script yokristy made are all broken (including the last one that tries to decode the AAEncode, but not the one that uses an entire browser to get the link lol). Other than this the code is the same, and they are still adding 3 to the last character.
They seems to be using a moving target approach now, but the method was pretty much the same for one week now, so I think it's feasible to just keep updating the extractor when they update it. The only other solution that would require less frequen fixes would be having a entire javascript engine running the link decoding functions.
@yokrysty commented on GitHub (Sep 7, 2016):
now they use jjencode (the js above the AAEncoded js)
here is the script decoded
@yan12125 commented on GitHub (Sep 7, 2016):
@gdkchan is right - a real Javascript engine might be the final solution...
I see @yokrysty proposed using a browser engine to get the video URL. It's not a good approach. In browser engines, anything can happen. User data may be uploaded to hacker's servers. So, real browser engines should not enter youtube-dl. On the other hand, modern Javascript engines have sandboxes, where only ECMAScript standard objects are accessible. I guess it's unlikely to have security issues.
@yokrysty commented on GitHub (Sep 7, 2016):
@yan12125 I didn't proposed cause those are licensed and writing one from scratch, not worth the time, I just did a demo, btw I am pretty sure ghost.py is sandboxed
Edit:
@yan12125 can you use this decoder for jjEncode?
@yan12125 commented on GitHub (Sep 7, 2016):
I see - I was concerning things like file uploading. Seems both ghost.py and PhantomJS handles it well.
License is not a problem if youtube-dl does not bundle ghost.py files. A previous case is PyCrypto (#8201).
@JustMeDaFaq commented on GitHub (Sep 11, 2016):
jjencode/aaencode isnt an issue, but does someone actually know where the #streamurl lies?
Is it on the:
part?
@e2iplayer commented on GitHub (Sep 11, 2016):
You are funny, because everything is working but now there is need add +3 to last char.
Do you really need, so many days and discussion?
You simple can change +1 to +3 and then you can discuss.
@yan12125 commented on GitHub (Sep 11, 2016):
Please refrain from offensive words.
@e2iplayer commented on GitHub (Sep 11, 2016):
@yan12125
Were you see "offensive words" in my message?
@yan12125 commented on GitHub (Sep 11, 2016):
For me "funny" is. I may be too strict. I just try to keep peaceful discussions.
@e2iplayer commented on GitHub (Sep 11, 2016):
But, you are really funny. Observing this discussion.
In my opinion you should rather say "THANKS" instead of writing "Please refrain from offensive words.".
In my opinion you are not good person to moderate anything here.
Why? Because you do basic errors. For example taking my code without inform me as I requested.
@yan12125 commented on GitHub (Sep 11, 2016):
I confess I didn't do everything well. Being late to push simple fixes is one.
Your codes are never integrated into rg3/youtube-dl. In fact I've never looked into your version as it couldn't be used in youtube-dl, so I didn't notice @Belderak's version was different from @gdkchan's.
@e2iplayer commented on GitHub (Sep 11, 2016):
You want to use my code taken by other user. So, what is the difference?
Also maybe you will check based on which code auto signatures decryption for youtube have been made?
Please stop to discredit yourself.
@yan12125 commented on GitHub (Sep 11, 2016):
Wrong. Before your first post, all I can tell is that @Belderak's version was based on @gdkchan's, and the latter is clean.
@e2iplayer commented on GitHub (Sep 11, 2016):
You want to say that. You not know. So, everything is OK?
You should ask @Belderak if he is authot of this code.
Any way the problem is not from where the code was taken the problem is because it not problem for me.
But I asked to copy also from where the code was taken that's all.
Also you think that there is no problem when I spent a hours of reverse engineering to write a code and then some one based on my code write his own and not inform based on which code he write his own in your opinion this is OK.
NOT THIS IS NOT! Because not problem to write the code when you exactly know algorithm.
You really do not understand this? What a man.
@yan12125 commented on GitHub (Sep 11, 2016):
Yes that's the point. I should, and will be more careful in the future. I just want to clarify I didn't mean to take your codes without informing you.
@dstftw commented on GitHub (Sep 11, 2016):
@samsamsam-iptvplayer initial signature decryption has been impemented by @jaimeMF and reversed by @FiloSottile. Later on it's been maintained by the same persons and @phihag. JS interpreter has been written by @phihag and then maintained by youtube-dl developers. Thus this claim is complete bullshit until proved.
If you are able to reverse, this does not mean nobody else can do. "Don't think you are a navel of the World" as you like to blame others.
If you don't want anybody to write something based on your code then don't make it public. It's impossible to get protected against another code written based on whatever one's code (either with mentioning the source or without it). Moreover it's very problematic to prove the similarity until there are obvious similar patterns discovered. There are lots of codes reversed by youtube-dl developers (by myself in particular) that are used in other projects either modified or intact without any mentioning of the source. And we don't really care about that.
After all, we technically can't control the origin of the code and we assume honesty of the person providing it (even if we ask about the authorship this basically changes nothing since one may lie).
If you are so concerned leave your name I'll add it to AUTHORS.
@yan12125 commented on GitHub (Sep 11, 2016):
Thanks @dstftw the history before my first contribution is quite interesting and fascinating. It's a bad thing that I have no time to understand how youtube-dl grows to such a large project. ChangeLog compensates the blank to some extent. That's one of the reasons that I hope there's a ChangeLog in this project.
@e2iplayer commented on GitHub (Sep 11, 2016):
@dstftw
" Thus this claim is complete bullshit until proved."
Are you all right? I do not thinks so. This is not claim, only information.
really you do not know what you're saying.
At frist please check issues:
https://github.com/rg3/youtube-dl/issues/1208
https://github.com/rg3/youtube-dl/pull/1216
Also ask @phihag based on which code he write his code.
I'm waiting for apology.
@dstftw commented on GitHub (Sep 11, 2016):
This proves nothing. I see no typical similarities between this code and @phihag's implementation. Only not so well written and stylistically non-pythonic code.
@hrxn commented on GitHub (Sep 11, 2016):
For what? For using open source program code (Even if)?
I don't think you really know how this works. Better educate yourself.
@e2iplayer commented on GitHub (Sep 11, 2016):
"For what?"
For this: "bullshit"
@dstftw
You are programmer and not see? If you are programmer and not see please ask.
What a person...
I think that you know perfectly well. But you have no honor to say: "Sorry I do not know".
@Hrxn
"I don't think you really know how this works. Better educate yourself."
Really? I think you do not know how open source works.
@gdkchan commented on GitHub (Sep 11, 2016):
Well... I don't think that @yan12125 did anything wrong at all... Because first, afaik this is a volunteer work, so no one is obligated to do anything in the first place... He was discussing the best way to face the recent changes, because he could change the code to use + 3 instead of + 1, and openload could change the values once again a few hours later, making his effort useless.
Those inflammatory comments and discussion over code that is not even being used anymore seems pretty pointless and childish too...
@JustMeDaFaq
The streamurl is a span tag on the HTML of the page, something like
span id="streamurl">HERE IS THE LINK</span>, and then theres an AAEncoded script that assigns the value that comes out of the hiddenurl decoder to this tag. The function that decodes the hiddenurl is the JJEncoded one,@e2iplayer commented on GitHub (Sep 12, 2016):
@gdkchan
Effort changing 1 to 3. Yes, this is really big effort.
"childish" - are you read with understanding?
Another demonstration of total ignorance. There is no sense to further discuss.
In this thread there are some persons without honor. This is a clue.
Have fun.
@JustMeDaFaq commented on GitHub (Sep 12, 2016):
Is it just me getting pigeons or did they changed theyre method again?
@baron19 commented on GitHub (Sep 12, 2016):
Nope, they didn't, I get pigeons too, and I checked that java script that they run and the last number is still 3
@JustMeDaFaq commented on GitHub (Sep 12, 2016):
@baron19 so, any idea why were getting pigeons? :D
@baron19 commented on GitHub (Sep 12, 2016):
I'm trying to figure it out, but no luck yet. I can open it from any browser though, is that also the case with you?
@JustMeDaFaq commented on GitHub (Sep 12, 2016):
@baron19 Yeah, can watch it via any browser
The script is still in JJEncode? Cant actually find it anymore.
@Kaskadee commented on GitHub (Sep 12, 2016):
It seems like, they changed it again. It's not a JJEncoded script anymore.
@baron19 commented on GitHub (Sep 12, 2016):
Yes, it's not JJEncoded anymore, but they are still using the same method, they just changed the value that is added to the last character to 2. I checked with a couple of links and it works.
This is what I got after de-obfuscating it
http://pastebin.com/xsUxcY37
@JustMeDaFaq commented on GitHub (Sep 12, 2016):
@baron19
Could you may give an hint on how you deobfuscated it?
And thanks btw
@baron19 commented on GitHub (Sep 12, 2016):
@JustMeDaFaq
I used this -> https://addons.mozilla.org/en-US/firefox/addon/javascript-deobfuscator/
It just shows all the javascript that the browser is running.
So, yeah, I have no clue where that code is or where that 2 or sometimes 3 is coming from.
@JustMeDaFaq commented on GitHub (Sep 12, 2016):
@baron19 Thanks! Works fawlessly with using 2 instead of 3!
@e2iplayer commented on GitHub (Sep 12, 2016):
This is still JJEncode but before it is additionally obfuscated:
gitlab.com/iptvplayer-for-e2/iptvplayer-for-e2@f3a5a0b652@remitamine commented on GitHub (Sep 12, 2016):
there are multiple levels of encryption.
for the example url from the issue:
the code for decryption can be found in first line of the last inline script in the wabpage.
decrypted to:
decrypted to:
unescaped to:
@baron19 commented on GitHub (Sep 13, 2016):
Pigeons again.
@gdkchan commented on GitHub (Sep 13, 2016):
They added another span tag right below the hidden URL with a seemingly random Id name, and is using that instead of the HiddenURL itself. It's pretty easy to grab it with a regex through, something like
<span id=\"[\w-]{10}\">(.+?)</span>.@baron19 commented on GitHub (Sep 13, 2016):
Yeah, I noticed that, but how are they generating that tag?
@gdkchan commented on GitHub (Sep 13, 2016):
The name is generated on the server.
@yokrysty commented on GitHub (Sep 13, 2016):
I quickly improvised some code to get the real video url with success so far, feel free to use it how ever you want :)
http://pastebin.com/EjcSpZyE
@snipem commented on GitHub (Sep 19, 2016):
Even with the recently introduced changes by @jnbdz, still pidgeons
@yan12125 commented on GitHub (Sep 22, 2016):
Thanks to @daniel100097 (#10727), openload is fixed.
@kasper93 commented on GitHub (Sep 22, 2016):
They will change it sooner than you think. Only solution for such stubborn sites would be actual JS engine.
@yan12125 commented on GitHub (Sep 22, 2016):
It's surprising for me that they didn't change it in 9 hours.
@hrxn commented on GitHub (Sep 23, 2016):
Doesn't really matter, all it takes is one simple and easy commit with changes to
youtube_dl/extractor/openload.py, which can be done here, on this site, in your browser.Just a few seconds...
Edit:
The full link...
https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/openload.py
@JustMeDaFaq commented on GitHub (Sep 23, 2016):
Broken again :D
@kasper93 commented on GitHub (Sep 23, 2016):
Nah, still works for me.
@snipem commented on GitHub (Oct 19, 2016):
Pigeons a.k.a. broken again. I'm using 2016.10.19
@ghost commented on GitHub (Oct 29, 2016):
Pigeons again. Add 3 instead of 2.
Also, this is basically all they added. Hilarious!
@yan12125 commented on GitHub (Oct 29, 2016):
Thanks updated!
@remitamine commented on GitHub (Nov 2, 2016):
the obfuscated code changes periodically.
for example on one invocation you get this code:
after sometime you get another code that change the names of the functions and the values returned:
@ghost commented on GitHub (Nov 2, 2016):
The first function always returns a 3 and if the result of the second and third function are subtracted from each other the result is always the value of the fourth.
That may help with figuring out how the initial numbers are being generated or it may just be a coincidence, its probably pretty obvious but i'm too tired to think right now.
@denneboomyo commented on GitHub (Nov 2, 2016):
@remitamine Where exactly is the obfuscated code on the video page's source code? Is it the one on the bottom?
Edit: Nevermind, you explained it in a earlier post.
@yokrysty commented on GitHub (Nov 2, 2016):
why not use the new API used in Kodi? (see urlresolver)
visit https://api.openload.co/1/streaming/get?file={media_id}
if the message is: IP address not authorized. Visit https://openload.co/pair
tell the user to visit the pair page from above, follow the instructions then visit again https://api.openload.co/1/streaming/get?file={media_id} to obtain the media url
for 4 hours any stream can be used
@yan12125 commented on GitHub (Nov 2, 2016):
CAPTCHA are not supported yet (#154). And in the case of https://openload.co/pair, I guess youtube-dl need to launch a browser. Unlike Kodi, youtube-dl is a command line program, so exchanging data with browsers would be complicated
@yokrysty commented on GitHub (Nov 2, 2016):
you don't need captcha you just inform the user to open browser and pair, then for 4 hours he can download and you can launch the browser from command line
@NitroXenon commented on GitHub (Nov 2, 2016):
@samsamsam-iptvplayer's approach :
gitlab.com/iptvplayer-for-e2/iptvplayer-for-e2@9f99dfbe5e@kasper93 commented on GitHub (Nov 2, 2016):
This is wrong. You based your conclusion only on those two examples above.
I've taken a quick look They change one char in last part of url. To one of last 7 chars random value form range 1-3 is added. And that's all. Same thing as before, but now it isn't always last char and value is random. There is no way to predict where "token" was broken.
P.S Since they add only values from 1-3 range simple brute forcing proper url works fine :D
@ghost commented on GitHub (Nov 3, 2016):
I didn't use the examples to check, but yeah i was totally wrong.
Anyway, looks like the best way to get around this is to AADecode then get the values via regex like what @samsamsam-iptvplayer did.
@NitroXenon commented on GitHub (Nov 3, 2016):
@TwelveCharzz Yeah something like that. I think @yokrysty approach should only be used when there's no way to extract the link programmatically from the webpage.
@mrknow commented on GitHub (Nov 3, 2016):
openload fix
https://github.com/mrknow/filmkodi/blob/telewizjada_i_wizja/script.mrknow.urlresolver/lib/urlresolver9/plugins/openload.py
@sudovijay commented on GitHub (Nov 4, 2016):
thanks @mrknow ! it indeed work by this method. its all in the return of functions. just match them
@NitroXenon commented on GitHub (Nov 5, 2016):
This is my approach:
https://github.com/NitroXenon/Terrarium-Public/blob/gh-pages/openload.js#L30-L110
@NitroXenon commented on GitHub (Nov 5, 2016):
It simply translates the whole function to make it capable to evaluate using js eval().
@yan12125 commented on GitHub (Nov 16, 2016):
Thanks to @kasper93, it's working again!
@qgate commented on GitHub (Nov 16, 2016):
https://openload.co/stream/nJ5WmuyOh3c
13794905852001:19f0::~l7eMTCK6?mime=trueBug: {"status":403,"msg":"wrong IP"}
@yan12125 commented on GitHub (Nov 16, 2016):
Which video are you downloading? And did you pull down the latest git version?
@makgun02 commented on GitHub (Nov 22, 2016):
Thanks all of you. Now I ported in java for my personal application and You are free to use it whenever you want to use it. http://pastebin.com/FUCmgw5i
@siddht4 commented on GitHub (Nov 22, 2016):
@Makgun. Thanks , I can implement some parts of your cod3 in my own youtube-dl-java project. You can use it , its open source after all
@ghost commented on GitHub (Nov 28, 2016):
looks like it is not working any more do u have a update or any solution this is the erro i get:
Traceback (most recent call last):
File "C:\Users\xxx\Documents\aaaaa.py", line 57, in
raise Exception("Video link encrypted data is not available.")
Exception: Video link encrypted data is not available.
even if your url or mine
@yan12125 commented on GitHub (Nov 29, 2016):
Just tried and it's still working:
Please make sure you're using the latest version (2016.11.27)
@siddht4 commented on GitHub (Nov 30, 2016):
yes , its working
youtube-dl -v "https://openload.co/embed/kUEfGclsU9o/"
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'https://openload.co/embed/kUEfGclsU9o/']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.11.27
[debug] Python version 2.7.12 - Linux-4.4.0-47-generic-x86_64-with-LinuxMint-18-sarah
[debug] exe versions: ffmpeg 2.8.8-0ubuntu0.16.04.1, ffprobe 2.8.8-0ubuntu0.16.04.1
[debug] Proxy map: {}
[Openload] kUEfGclsU9o: Downloading webpage
[debug] Invoking downloader on u'https://openload.co/stream/kUEfGclsU9o
148059819347.29.0.0~qSQlHxGa?mime=true'[download] Destination: skyrim_no-audio_1080.mp4-kUEfGclsU9o.mp4
[download] 24.1% of 9.80MiB at 133.15KiB/s ETA 00:57^C
ERROR: Interrupted by user
@ghost commented on GitHub (Nov 30, 2016):
Traceback (most recent call last):
File "C:\Users\danfl\Documents\aaaaa.py", line 57, in
raise Exception("Video link encrypted data is not available.")
Exception: Video link encrypted data is not available.
this is what i get
@ghost commented on GitHub (Nov 30, 2016):
but any way i dont what to download it , i just what to get that link show in your debug how do i code python to print me that link
[debug] Invoking downloader on u'https://openload.co/stream/kUEfGclsU9o
148059819347.29.0.0~qSQlHxGa?mime=true'@yan12125 commented on GitHub (Nov 30, 2016):
What's in aaaaa.py?
On Dec 1, 2016 10:17 AM, "sonaldynho" notifications@github.com wrote:
@ghost commented on GitHub (Dec 1, 2016):
import sys, re, urllib2
from HTMLParser import HTMLParser
url = raw_input('url: ')
if not url:
url = 'https://openload.co/embed/LFWZT-Ig3gk/'
_USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'
regex = re.compile(r'//.+?/(?:embed|f)/([0-9a-zA-Z-]+)')
def get_embed_url(url):
ids = _regex.findall(url)
if ids:
return 'https://openload.co/embed/%s/' % ids[0]
return url
def getHtml(url):
req = urllib2.Request(url)
req.add_header('User-Agent', _USER_AGENT)
req.add_header('Referer', url)
response = urllib2.urlopen(req)
html = response.read()
print url
print '\n'
html = getHtml(get_embed_url(url))
if any(x in html for x in ['We are sorry', 'File not found']):
raise Exception('The file was removed')
m = re.search(r'(.+?)</span>', html)
if not m:
raise Exception("Video link encrypted data is not available.")
enc_data = m.group(1).strip()
enc_data = HTMLParser().unescape(enc_data)
#print enc_data
video_url_chars = []
for c in enc_data:
j = ord(c)
if j >= 33 and j <= 126:
j = ((j + 14) % 94) + 33
video_url_chars += chr(j)
video_url = 'https://openload.co/stream/%s?mime=true'
video_url = video_url % (''.join(video_url_chars))
print video_url
raw_input()
@ghost commented on GitHub (Dec 1, 2016):
this is in aaaaaa.py
@dstftw commented on GitHub (Dec 1, 2016):
aaaaaa.py is not a part of or related to youtube-dl.
@yan12125 commented on GitHub (Dec 1, 2016):
@sonaldynho That's a very old version of openload.py. You may want to use the youtube_dl library directly or copying the latest codes from https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/openload.py
@ghost commented on GitHub (Dec 1, 2016):
Let's say I want to install in my addon what is the step by step on what to do ?????my addon is simple and have just the basics, 2 files addon.xml and default.py
@yan12125 commented on GitHub (Dec 1, 2016):
I guess you're using Kodi (XBMC)? You may want to ask on Kodi forums for how to use youtube-dl in Kodi.
@ghost commented on GitHub (Dec 1, 2016):
They are full of bull****** over there every time I ask something like that over there they say it is against the rules
@kasper93 commented on GitHub (Dec 1, 2016):
Guys could we stay on topic here? I watch this thread to get info about
openload in youtube-dl only. There are other channels to discuss different
topics.
Thanks.
@ghost commented on GitHub (Dec 1, 2016):
yan12125 Do u have a e-mail or some way I can talk to u out side the post so I don't disturb evebody else
@yan12125 commented on GitHub (Dec 1, 2016):
My email can be found on https://github.com/yan12125
@ghost commented on GitHub (Dec 4, 2016):
They updated their site again.
@ghost commented on GitHub (Dec 4, 2016):
So heres the new code they added:
If you deobfuscate the AAEncoded code like usual you will get the ID that you are already getting with regex.
Deobfuscated AA:
The element with that ID:
The one you're supposed to get (ends with an "x")
Deobfuscated everything else:
Here is the simplified version in javascript:
@NitroXenon commented on GitHub (Dec 5, 2016):
@TwelveCharzz I can confirm that your algo is working. Can I use your code in my little project?
@ghost commented on GitHub (Dec 5, 2016):
Go ahead, its barely mine anyway. Most of it is copied directly from openload.
@NitroXenon commented on GitHub (Dec 5, 2016):
Well thank you. 👍
@biezom commented on GitHub (Dec 6, 2016):
@TwelveCharzz Thanks
If someone is interested, the python version
@yan12125 commented on GitHub (Dec 7, 2016):
@biezom Would you like to open a pull request?
@biezom commented on GitHub (Dec 7, 2016):
@yan12125 Sorry i don't know how to do this, but if it can help with this openload.py it works for me
@yan12125 commented on GitHub (Dec 7, 2016):
Thanks @biezom, now just need a confirmation from @TwelveCharzz: could you declare your codes as public domain so that it can be used in youtube-dl?
@ghost commented on GitHub (Dec 7, 2016):
Go ahead, do whatever you want. Like i said, most of it is copy/pasted from openload anyway.
@yan12125 commented on GitHub (Dec 8, 2016):
@TwelveCharzz & @biezom Thanks for the fix!
@makgun02 commented on GitHub (Dec 14, 2016):
I saw a symbolic link for openlaod.co from an embedded video code of website which just replace "openload.co" prefix(or host) to "oload.tv" and this tells youtube-dl doesn't support but actually it does. I think you need to add for this host.
@yan12125 commented on GitHub (Dec 15, 2016):
@makgun02 example URL?
@makgun02 commented on GitHub (Dec 15, 2016):
Example:
youtube-dl https://openload.co/embed/KnG-kKZdcfY/which is supported by youtube-dl andyoutube-dl https://oload.tv/embed/KnG-kKZdcfY/which is not supported by youtube-dl. But both of links refers to same video at same domain@yan12125 commented on GitHub (Dec 15, 2016):
@makgun02 Thanks for the example link. It will be recognized in the next version. For future cases, please open a new issue as this issue is for supporting "openload.co", and oload.tv is something different.
@sudovijay commented on GitHub (Jan 8, 2017):
#11646 they just updated the code. I already fixed it. just a minor change.
@hbiyik commented on GitHub (Jan 10, 2017):
i can confirm fix from sudoviyaj works fine, can you merge to master?
update: now they changed the numbers again, script fails again.
@byteholding commented on GitHub (Jan 10, 2017):
Sorry, this is the correct issue:
/usr/bin/youtube-dl --verbose https://openload.co/embed/kUEfGclsU9o/
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'https://openload.co/embed/kUEfGclsU9o/']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.01.10
[debug] Python version 2.6.6 - Linux-2.6.32-642.1.1.el6.x86_64-x86_64-with-centos-6.8-Final
[debug] exe versions: ffmpeg 0.6.5, ffprobe 0.6.5
[debug] Proxy map: {}
[Openload] kUEfGclsU9o: Downloading webpage
[debug] Invoking downloader on u"https://openload.co/stream/K5%F'CLS5\x19O^\x11\x14\x18\x14\x11\x17\x17\x11\x11\x14^\x13\x17\x0e\x12\x12\x11\x0e\x10\x0e\x10^4O/\x16\x13R\x157"
ERROR: unable to download video data: HTTP Error 400: Bad Request
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/youtube_dl-2017.01.10-py2.6.egg/youtube_dl/YoutubeDL.py", line 1699, in process_info
success = dl(filename, info_dict)
File "/usr/lib/python2.6/site-packages/youtube_dl-2017.01.10-py2.6.egg/youtube_dl/YoutubeDL.py", line 1641, in dl
return fd.download(name, info)
File "/usr/lib/python2.6/site-packages/youtube_dl-2017.01.10-py2.6.egg/youtube_dl/downloader/common.py", line 353, in download
return self.real_download(filename, info_dict)
File "/usr/lib/python2.6/site-packages/youtube_dl-2017.01.10-py2.6.egg/youtube_dl/downloader/http.py", line 61, in real_download
data = self.ydl.urlopen(request)
File "/usr/lib/python2.6/site-packages/youtube_dl-2017.01.10-py2.6.egg/youtube_dl/YoutubeDL.py", line 2001, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib64/python2.6/urllib2.py", line 397, in open
response = meth(req, response)
File "/usr/lib64/python2.6/urllib2.py", line 510, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib64/python2.6/urllib2.py", line 435, in error
return self._call_chain(*args)
File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib64/python2.6/urllib2.py", line 518, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 400: Bad Request
@hbiyik : Did you find already a solution?
@sudovijay commented on GitHub (Jan 10, 2017):
#11646 Fixed Again!
@byteholding commented on GitHub (Jan 11, 2017):
@sudovijay thank you, but now i get pigeons again. Could you please check it again?
@sudovijay commented on GitHub (Jan 11, 2017):
@byteholding ! works fine for me . what url you trying though ?
@byteholding commented on GitHub (Jan 11, 2017):
@sudovijay : thank you very much, it works now.
@ghost commented on GitHub (Jan 11, 2017):
i didn't understand is openload fix ????? from this last message it look to be but i update my youtube-dl and nothing happend
@ghost commented on GitHub (Jan 11, 2017):
Just a thought, is it possible to loop from Dynamic first chars to dynamic split in case they change the numbers again.
@jahanzaiblaghari commented on GitHub (Jan 12, 2017):
can someone share the working script cause current update of youtube-dl is failing to extract the id for openload.co
@sudovijay commented on GitHub (Jan 12, 2017):
@jahanzaiblaghari ! here #11646
@dammysky commented on GitHub (Feb 8, 2017):
Openload extraction fails again. Error: ValueError:unichr() arg not in range(0x10000)
@yan12125 commented on GitHub (Feb 8, 2017):
Openload is broken again. There's an incomplete fix at #12002. It works on Python <= 3.5 but fail on 3.6
@mdoulabi commented on GitHub (Feb 8, 2017):
i have python 2.6.6 centos , i should update python?
@enveeed commented on GitHub (Feb 10, 2017):
How can I apply the fix at #12002 ?
@lodawn commented on GitHub (Feb 23, 2017):
openload blocked again
@makgun02 commented on GitHub (Feb 24, 2017):
Yes they again blocked it. But We can fix it again. For now, what I get for new algorithm is that looks like this but I couldn't figure out it but maybe with you we done it. Especially
f[substr]()command.@emavgl commented on GitHub (Mar 3, 2017):
Seems it doesn't work again.
@makgun02 commented on GitHub (Mar 3, 2017):
Hi. I finally get their codes but I write it in java beccause I have no skills about python so If you want to update your logic I share my code to all you. You can look my code from this
@dammysky commented on GitHub (Mar 4, 2017):
Extraction Algorithm changed again.
@tb3d commented on GitHub (Mar 4, 2017):
Please help. Try.py is code from http://pastebin.com/PJ4SFqBM
C:\Users\Admin\Desktop\youtube-dl-master-b>py try.py
url: https://openload.co/embed/76iLgGro7Hw
https://openload.co/embed/76iLgGro7Hw
Traceback (most recent call last):
File "try.py", line 57, in
raise Exception("Video link encrypted data is not available.")
Exception: Video link encrypted data is not available.
@denneboomyo commented on GitHub (Mar 4, 2017):
#12357
I just translated @makgun02 java code to python. It should fix the extraction.
@tb3d commented on GitHub (Mar 4, 2017):
When I run try.py file it is same error.
This is my second file (openload.py) for extraction. Any solution? Thanks.
C:\Users\Admin\Desktop\youtube-dl-master-b>py openload.py
Traceback (most recent call last):
File "openload.py", line 2, in
import youtube_dl
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl_init_.py", lin
e 43, in
from .extractor import gen_extractors, list_extractors
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl\extractor_init
_.py", line 9, in
from .extractors import *
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl\extractor\extract
ors.py", line 54, in
from .ard import (
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl\extractor\ard.py"
, line 7, in
from .generic import GenericIE
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl\extractor\generic
.py", line 85, in
from .openload import OpenloadIE
File "C:\Users\Admin\Desktop\youtube-dl-master-b\youtube_dl\extractor\openloa
d.py", line 78
video_url_chars = []
^
IndentationError: unexpected indent
This is my extractor/openload.py file:
coding: utf-8
from future import unicode_literals
import re
from .common import InfoExtractor
from ..compat import compat_chr
from ..utils import (
determine_ext,
ExtractorError,
)
class OpenloadIE(InfoExtractor):
VALID_URL = r'https?://(?:openload.(?:co|io)|oload.tv)/(?:f|embed)/(?P[a-zA-Z0-9-]+)'
@denneboomyo commented on GitHub (Mar 4, 2017):
@tb3d I missed a semicolon, sorry! Fixed it, should work now
#12357
@makgun02 commented on GitHub (Mar 4, 2017):
@tb3d this works for me . And thanks @denneboomyo thanks for this code. But DO NOT change ord to compact_ord in line 79 from myPasteCode.
@makgun02 commented on GitHub (Mar 4, 2017):
@denneboomyo without semicolon it works on my laptop which runs on UBUNTU 16.10 and Python 2.7.12+ .
@denneboomyo commented on GitHub (Mar 4, 2017):
@makgun02 Yes, my bad. Still a newbie to Python. I guess we don't need the semicolons at all, so I removed them.
#12357
@byteholding commented on GitHub (Mar 4, 2017):
Hey,
you need to change
first_char = compact_ord(ol_id[0])
to
first_char = ord(ol_id[0])
@tb3d commented on GitHub (Mar 4, 2017):
Thank you @makgun02 and @denneboomyo for the solutions! It works well! 👍
SOLUTION: http://pastebin.com/HupBJ1iz
@yan12125 commented on GitHub (Mar 6, 2017):
Thanks to @makgun02 and @denneboomyo (#12357), this will be fixed in the next version.
@denneboomyo commented on GitHub (Mar 7, 2017):
I think they changed their algorithm again.
@makgun02 commented on GitHub (Mar 7, 2017):
this is new code @denneboomyo
@denneboomyo commented on GitHub (Mar 7, 2017):
I created a pull request. #12396
Thanks @makgun02 !
@phoka7 commented on GitHub (Mar 12, 2017):
They did it again!
Here is the new code!
@byteholding commented on GitHub (Mar 13, 2017):
@phoka7 : Thank you very much!!
@phoka7 commented on GitHub (Mar 13, 2017):
And again....
Try this
@makists79 commented on GitHub (Mar 13, 2017):
Hi, can someone tell me how can i run in terminal that code? thank you.
@byteholding commented on GitHub (Mar 14, 2017):
@phoka7 Your last change didn't work anymore. could you please check it again?
@yan12125 commented on GitHub (Mar 14, 2017):
#12446
@phoka7 commented on GitHub (Mar 15, 2017):
@byteholding this version is still working for me
@yan12125 commented on GitHub (Mar 16, 2017):
@lodawn version 2017.03.15 is still working
@lodawn commented on GitHub (Mar 16, 2017):
@yan12125 works for me Thanks
@dpxcc commented on GitHub (Mar 16, 2017):
It's not working anymore. They changed the extraction code again.
@makgun02 commented on GitHub (Mar 17, 2017):
Here is new code.
@yan12125 commented on GitHub (Mar 17, 2017):
Thanks @makgun02!
@makgun02 commented on GitHub (Mar 17, 2017):
I really annoyed uptade code every time. So I decided to write dyamic version. I finished my Java app but in Python I am not good.Here - openload_dynamic_with_browser.py a test version dynamic which creates streamurl via using browser. I also saw a good tutorial in this page but I couldn't finished it. NOT Don't forget change filename adress in line 101 from myPaste "/home/makgun/ddd" to your fileAdress
@denneboomyo commented on GitHub (Mar 17, 2017):
@makgun02 Could you post your java code for your dynamic version?
@dpxcc commented on GitHub (Mar 17, 2017):
#12468
@yan12125 commented on GitHub (Mar 17, 2017):
Thanks @dpxcc, but it's not a good idea to put so many redundant codes like
_0x4bcf06 < _0x3bac1ain youtube-dl. It would be great if there's a Javascript transpiler with constant folding optimizations.@dpxcc commented on GitHub (Mar 17, 2017):
Yes, I agree. My point is that we don't have to parse those obfuscated code manually. We could create an automated tool to execute that js code. That should be fine for minor changes of the extraction code.
@makgun02 commented on GitHub (Mar 17, 2017):
@denneboomyo Here is my java code. I use it my android app.
In your mainActivity,java call it like
getUrl mgetUrl=new getUrl(mainActivity.this,linkOfOpenload);mgetUrl.getDocument();No need to call in asyncTask already called in asyncTask
@makgun02 commented on GitHub (Mar 17, 2017):
@denneboomyo Also if you want implement notify
mgetUrl.onNotifyListener(new getUrl.Notify() {@Overridepublic void onNotify(String result) {//CodeHere}});@lodawn commented on GitHub (Mar 18, 2017):
still not working.. right?
@makgun02 commented on GitHub (Mar 18, 2017):
@lodawn This should work but it opens web browser. So Please use it if you dont use other fuction of youtube-dl. Because link which appears in browser canNOT be read by youtube-dl to download. I suggest use
-goption even if you get error.@lodawn commented on GitHub (Mar 19, 2017):
@makgun02 Is there any other way? I'm using in Kodi. So web browser won't open.
@makgun02 commented on GitHub (Mar 19, 2017):
@lodawn you can use this new code.
@lodawn commented on GitHub (Mar 19, 2017):
@makgun02 Thank you. It works for me..
@JO-WTF commented on GitHub (Mar 20, 2017):
youtube-dl https://openload.co/f/QpeamFjzKBQ/jq-txy0227-hd-1.mp4
[Openload] QpeamFjzKBQ: Downloading webpage
[download] Destination: jq-txy0227-hd-1.mp4-QpeamFjzKBQ.mp4
[download] 100% of 36.00B in 00:00
Not working again now.
@yan12125 commented on GitHub (Mar 20, 2017):
FYI: #12503 fixed it again.
@makgun02 commented on GitHub (Mar 20, 2017):
@JO-WTF it still works. If you get error (probably you get it in next update), please use browser solution which you can find my previous comment.
@makgun02 commented on GitHub (Mar 20, 2017):
Yes, Finally they are using dynamic variable so that sometimes our code works sometime doesn't. They change the number dynamically. And browser method always works but our algorith only works if the number equals the number inside of our code. So @JO-WTF you are right, try it multiple time. For now they switch the number using 2 different number so your luck is %50-%50.
@yan12125 commented on GitHub (Mar 20, 2017):
Sounds this should be reopoend
@boxstore commented on GitHub (Mar 20, 2017):
Seems it doesn't work again every time
@JO-WTF commented on GitHub (Mar 20, 2017):
youtube-dl -J https://openload.co/f/IKix4daPsPI/jq-txy0227-hd-1.mp4
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 464, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 454, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1884, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 761, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 428, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 92, in _real_extract
ValueError: invalid literal for int() with base 8: '7d1'
That's the error I have got. I think the number is changed again.
@makgun02 commented on GitHub (Mar 21, 2017):
@JO-WTF Here - Quick fix which deal with two different numbers. Please try it.
@JO-WTF commented on GitHub (Mar 21, 2017):
@makgun02 I have upgraded youtube-dl but still 50% chance to get
ValueError: invalid literal for int() with base 8: '5e6'
Am I not at the right version?
@makgun02 commented on GitHub (Mar 21, 2017):
@JO-WTF please post your file which must be "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py" according to your report. Also remove
#from #print js in line 86 from here. And report the output whenever you get error.@JO-WTF commented on GitHub (Mar 21, 2017):
How can I extract the youtube-dl binary file please?
@NitroXenon commented on GitHub (Mar 21, 2017):
@makgun02
This is my decryption implementation in pure JavaScript. It requires a JavaScript engine and no browser is needed. Just eval() it and you'll get the full stream url.
https://gist.github.com/NitroXenon/f2f106fcb44e0112bd79960c938fd75c
@makgun02 commented on GitHub (Mar 21, 2017):
If you install it from here using with this command
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl. Please remove it whereever you copied the binary file. Then Again go to this and useclone or downloadto get all files. Extract them to any directory in your pc. Then go toterminaland typecd /path/your/dir/and thensudo python setup.py.@NitroXenon I dont know JavaScript and Html. It is according of my experience. So maybe you are right.
@NitroXenon commented on GitHub (Mar 21, 2017):
My script hooks the jQuery functions and the document variable which only presents in a browser. This way you don't need a browser anymore. :)
@ozcs commented on GitHub (Mar 21, 2017):
i tried your .js file, doesn't work either, everytime shows the same decoded url, something is not right
@makgun02 commented on GitHub (Mar 21, 2017):
@ozcs Because you forget to change r='ol_id' in this file. You need to change it to which video file you want. You can see it from browser using
view-source:www.openload.co/ID-of-fileto URL box.@makgun02 commented on GitHub (Mar 21, 2017):
Sorry encoded="ol_id"
@NitroXenon commented on GitHub (Mar 21, 2017):
@ozcs Please read the comments inside the js file. I've written that you need to change the encoded string and the obfuscated decryption code by yourself when you test it. And of course you can writre a standalone script which runs on node base on mine. My script is for demonstration purpose only.
@NitroXenon commented on GitHub (Mar 21, 2017):
r is a dummy variable tho it's necessary. Otherwise I need to use Regex the replace the r variable in the obfuscated script.
@denobisipsis commented on GitHub (Mar 21, 2017):
Hi, the only dynamic variables are located in cases 1,3 & 6
i) key = first_char - 55 -> c3
ii) key = min(maxKey, len(ol_id) - 36-2) 36->c6
iii) index = H % 7 -> c1
@denobisipsis commented on GitHub (Mar 21, 2017):
case'\x31':.....(0x1041b1,0x6)];.....
case'\x33':.....(0x526965,0x34),....
case'\x36':....(_0x30d464['\x6c\x65\x6e\x67\x74\x68'],0x1e),0x2));continue;
maybe with a regex...
@makgun02 commented on GitHub (Mar 21, 2017):
@denobisipsis They are updates their code very frequently so that your solution works until they changed algorithms. I am talking about changing whole code not only changing numbers. So we need a js evaluator library and with using the @NitroXenon script. After that we can breathe a sigh of relief.
@ozcs commented on GitHub (Mar 21, 2017):
yes plz implement something that changes with every time openload change their algorithm , even if it means we have to install node.js as dependency of youtube-dl
@makgun02 commented on GitHub (Mar 21, 2017):
@ozcs I installed js2py (
sudo easy_install js2py"for who doesn't know how they install it.") and it really awesome module for javascript. If you want to install it you can use this code to make openload works for many times even if they change their algortithm but not guarantee. Thanks so much @NitroXenon for yor script.@JO-WTF commented on GitHub (Mar 22, 2017):
@makgun02 Thanks. After cloning the git, I tried to run sudo python setup.py but:
error: no commands supplied
What arguments are required please?
I don't see any instructions in the readme.md
Thank you.
@byteholding commented on GitHub (Mar 22, 2017):
cd /tmp && rm -f master.zip && rm -r -f youtube-dl && rm -r -f youtube-dl-master
wget https://github.com/rg3/youtube-dl/archive/master.zip && unzip master.zip
cd youtube-dl-master && chmod 755 ./setup.py
./setup.py build && ./setup.py install
@JO-WTF commented on GitHub (Mar 22, 2017):
@byteholding thanks a lot.
@lodawn commented on GitHub (Mar 22, 2017):
@makgun02 Thank you very much. It works great in my kodi
@dpxcc commented on GitHub (Mar 22, 2017):
They just added ip verification...
@Wandang commented on GitHub (Mar 22, 2017):
Getting
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 92, in _real_extract ValueError: invalid literal for int() with base 8: '2af'No IP error though
@lodawn commented on GitHub (Mar 22, 2017):
Still works for me
@dpxcc commented on GitHub (Mar 22, 2017):
If you run the code on your own machine, yes, it works.
But if you run the code on the server, then use the extracted link on your own machine, then it doesn't work any more. The ticket is linked to the IP...
You have to set up the server to bypass CORS...
@byteholding commented on GitHub (Mar 22, 2017):
Hey,
i' confused. Which code work at the moment? I tried many codes from this page, but no codes work.
Could anyone link the newest code, please?
@lodawn commented on GitHub (Mar 22, 2017):
IP check has been added before. There was also an ISP check.
'https://openload.co/stream/xxx?mime=true' url checks IP
'https://xxx.oloadcdn.net/dl/l/XXX/xxx.mp4?mime=true' redirect url checks ISP
If you are using the same ISP as the server
Downloadable with redirected url.
@dpxcc commented on GitHub (Mar 22, 2017):
@lodawn I don't think so. I can use my server's ticket on my own laptop yesterday...
@dpxcc commented on GitHub (Mar 22, 2017):
My server is on AWS. So my laptop doesn't share IP, nor ISP, with my server. But it was working yesterday.
@lodawn commented on GitHub (Mar 22, 2017):
Maybe the reason is change the way to getting stream url...( with javascript ) I think
google translate sucks.. sorry for my bad english
@makgun02 commented on GitHub (Mar 22, 2017):
@lodawn Have you tried to add post request to your server to get information from your local network? Use something like this
wget --postdata=$(wget -qO- https://www.openload.co/ID) yourServerLinkto get the correct information. But don't forget to edit your server side code. Because **openload.py ** has webpage var which fetch all contents from URL where it worked. So edit this value to get your postdata. I hope you understand what I said@lodawn commented on GitHub (Mar 22, 2017):
@makgun02 that url is not mine
I just say openload added check Ip verification before.
I don't need server. I m using youtube-dl in my kodi addon.
@makgun02 commented on GitHub (Mar 22, 2017):
@lodawn I really don't understand what are you trying to do. In my machine, it works until I stays same network connection. For example, if I used mobile network hotspots, I also download it from mobile network. If I used my Wi-Fi, I download it from same Wi-Fi.
@dpxcc commented on GitHub (Mar 22, 2017):
I think they don't restrict IP until today...
@makgun02 commented on GitHub (Mar 22, 2017):
@dpxcc In my knowledge, they always check the IP to give the exact stream URL. Not from today. If you use proxy, you also use same proxy to download it. This already known issue not for today.
@lodawn commented on GitHub (Mar 22, 2017):
@makgun02 there is something misunderstanding.
I have no problem your code is works great for me.
I just say to @dpxcc about IP verification
@lodawn commented on GitHub (Mar 22, 2017):
@makgun02 That's what I say....
sorry for my bad english
@dpxcc commented on GitHub (Mar 22, 2017):
They don't have IP check for streaming url until today. They do always have IP check for download url.
@lodawn The error you get is because you are downloading from a different ISP from the one requested for download ticket.
For stream url, the error (added today) is "wrong IP"
@dpxcc commented on GitHub (Mar 22, 2017):
I've been using https://github.com/dpxcc/Openload (server) to dynamically get streamurl for my website for a while. It was working fine until today...
The idea is very similar to @NitroXenon
@best-job commented on GitHub (Mar 23, 2017):
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://openload.co/f/vUN8E3UD-K0']
[debug] Encodings: locale cp1256, fs mbcs, out cp720, pref cp1256
[debug] youtube-dl version 2017.03.22
[debug] Python version 3.4.4 - Windows-10-10.0.14393
[debug] exe versions: none
[debug] Proxy map: {}
[Openload] vUN8E3UD-K0: Downloading webpage
Traceback (most recent call last):
File "main.py", line 19, in
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl_init_.py", line 464, in main
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl_init_.py", line 454, in _real_main
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl\YoutubeDL.py", line 1884, in download
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl\YoutubeDL.py", line 761, in extract_info
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl\extractor\common.py", line 428, in extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpo5tkbgew\build\youtube_dl\extractor\openload.py", line 92, in _real_extract
ValueError: invalid literal for int() with base 8: '60b'
@chrisbbreuer commented on GitHub (Mar 25, 2017):
@dpxcc hi man, have you been able to figure out this issue? I have been struggling to get youtube-dl to work and to download files from Openload
@dpxcc commented on GitHub (Mar 25, 2017):
@Chinese1904 I don't think it's possible to extract the stream url now from web (without flash, browser plugins, etc) It's simply because I can't bypass the same-origin policy to download that webpage. Even if I use a server to download that webpage for my client (in order to bypass the same-origin policy), that webpage my server gets won't work for my client, because they added some IP checks.
There is still one way to embed their videos without those annoying ads. You can use the sandbox attribute of iframe, e.g.
@chrisbbreuer commented on GitHub (Mar 26, 2017):
@dpxcc That's too bad, too sad. I am working on a remote upload feature, would you have any ideas on the best way to download those files to my server? Their API does not work more than half of the day, because of them exceeding their bandwidth limitations.
@Tithen-Firion commented on GitHub (Mar 26, 2017):
@makgun02 Usage of
js2pywas discussed already and rejected because of security concerns. Better solution is already in progress (but no ETA), see #11292 and #11272.@makgun02 commented on GitHub (Mar 26, 2017):
@Tithen-Firion thanks for links. It is good to see there is a project which already in progress. Also I am not good about js and python language (Actually only java), so I did very low research about js interpreter in python, there are a few jsinterpreter but I choose js2py according to user feedbacks and I only think about what we will deal with in this code. So I don't care about security concerns and this is a quick fix, also I didn't pull request about this.
Just personally. However thanks so much for informing people who used my code about security concerns.@dpxcc commented on GitHub (Mar 26, 2017):
@Chinese1904 Yes, their API is limited also... Actually, I'm switching to other service because in my project, I really want to have fine grained control over the video with only web technology.
If you just want to download the videos to your server, I think you can still use @makgun02 's code.
@lodawn commented on GitHub (Mar 27, 2017):
I think Openload changed extraction algorithm again.
@NitroXenon commented on GitHub (Mar 27, 2017):
@lodawn Yes they did. This is my new code in JS
https://gist.github.com/NitroXenon/f2f106fcb44e0112bd79960c938fd75c
@chrisbbreuer commented on GitHub (Mar 27, 2017):
@makgun02 just tried your code, but I run into some errors
Does it not work anymore or am I doing anything wrong?
@makgun02 commented on GitHub (Mar 27, 2017):
@Chinese1904 they changed their code again. So This new code must work until they updates again. I also add regex to get variable name so it won't break if they change their variable name. Special thanks to @Tithen-Firion and @NitroXenon for this script.
@Tithen-Firion commented on GitHub (Mar 27, 2017):
@makgun02 I didn't like unnecessary decoding so I've scrapped what's redundant from @NitroXenon's code and came up with this working module. Works fine, shorter, easier to read. I'm also working on deobfuscator, I will post my results later.
@makgun02 commented on GitHub (Mar 27, 2017):
@Tithen-Firion thanks for more simple code. I just edit code to work it again but I have no IDE installed for js or python so it will hard to write. Also I am newbie in python and js, and I just read it and edit code without changing its tree. So again thanks.
@NitroXenon commented on GitHub (Mar 27, 2017):
@Tithen-Firion Thanks the the code. Yours is definitely better. :D
@mdoulabi commented on GitHub (Mar 28, 2017):
i now make youtube-dl but is error download of openload why?
youtube-dl https://openload.co/embed/wEsThs10dtA/ps-swallow2
[Openload] wEsThs10dtA: Downloading webpage
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 464, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 454, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1884, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 761, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 428, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 92, in _real_extract
ValueError: invalid literal for int() with base 8: '56c'
@makgun02 commented on GitHub (Mar 28, 2017):
@mdoulabi this is old version. Actually our new code not updated for now because of
js2pyrepo. But if you want to try our code you need to edit your openload.py with our new code. @Tithen-Firion 's last comment has new code.@mdoulabi commented on GitHub (Mar 28, 2017):
when new update for youtube-dl its fixed openload?
@makgun02 commented on GitHub (Mar 28, 2017):
@mdoulabi For now, you need to try to replace this file /usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py (According to your report.) with this code. So it must work, if there is no file , or it is binary form, you can download
master.zipand runsetup.py. For more details look for @byteholding which commented about 6 days ago.@Tithen-Firion commented on GitHub (Mar 28, 2017):
There you go, de-obfuscated JavaScript from Openload. I've translated it to Python and created pull request already. #12587
@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02
i replace openload.py of ur link , and make again youtube-dl .
but this error :
youtube-dl -v --ignore-config https://openload.co/embed/wEsThs10dtA/ps-swallow2
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 16, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 43, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/init.py", line 9, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/extractors.py", line 54, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/ard.py", line 7, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 85, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 80
SyntaxError: (unicode error) 'utf8' codec can't decode byte 0xb4 in position 0: invalid start byte
@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi plase post your openload.py and what is line 80?
@yan12125 commented on GitHub (Mar 29, 2017):
Re-open until a long-term fix is found.
@Tithen-Firion commented on GitHub (Mar 29, 2017):
@yan12125 #11292 is needed for long-term fix that can be merged.
This is long-term fix that can't be merged because it uses
js2pymodule (security concerns).Extractor in master repo is working fine for now but it's not released yet.
@hrxn commented on GitHub (Mar 29, 2017):
You mean the master branch of this repo, i.e. rg3/youtube-dl, right?
@Tithen-Firion commented on GitHub (Mar 29, 2017):
@Hrxn yes, that's what I meant.
@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02
r"(゚ω゚ノ=.?('_');.?)゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_'];",
@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi Replace line 81 of this code with this one
js=p.search(webpage).group(2).replace("typeof","")and this will help. This is quick fix so maybe this fails if they update their code again. They are using typeof compare which fails the code. I couldn't understand why @Tithen-Firion code fails but I think, this will help you.@chrisbbreuer commented on GitHub (Mar 29, 2017):
@makgun02 I started a discussion to Tithen's code here https://gist.github.com/Tithen-Firion/6d32aa9995d44332c7cd1bf00ab49562
Any idea why it fails?
@Tithen-Firion commented on GitHub (Mar 29, 2017):
@Chinese1904 @makgun02 @mdoulabi comment about my modified extractor on my fork page here.
@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02 this again erorr
youtube-dl --ignore-config -v https://openload.co/embed/H27K9ZdaM5k/df-ts9
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 16, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 43, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/init.py", line 9, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/extractors.py", line 54, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/ard.py", line 7, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 85, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 5, in
ImportError: No module named js2py
@mdoulabi commented on GitHub (Mar 29, 2017):
@Tithen-Firion
your modified extractor is error :
youtube-dl --help
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 16, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 43, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/init.py", line 9, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/extractors.py", line 54, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/ard.py", line 7, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 85, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 79
SyntaxError: (unicode error) 'utf8' codec can't decode byte 0xb4 in position 0: invalid start byte
@Tithen-Firion commented on GitHub (Mar 29, 2017):
@mdoulabi which one? The one that is merged into master branch of this repository or the one that won't be merged into repository because it uses
js2pymodule (which you didn't even install) and should be commented on my fork page?@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi you need to install
js2pymodule after that probably my and @Tithen-Firion's code must work.@mdoulabi commented on GitHub (Mar 29, 2017):
how install js2py?
@makgun02 commented on GitHub (Mar 29, 2017):
Type this in terminal
sudo easy_install js2py.@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02
i instal js2py but this erorr :(
youtube-dl https://openload.co/embed/H27K9ZdaM5k/df-ts9
[Openload] H27K9ZdaM5k: Downloading webpage
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 464, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 454, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1884, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 761, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 428, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 79, in _real_extract
File "/usr/lib64/python2.6/re.py", line 190, in compile
return _compile(pattern, flags)
File "/usr/lib64/python2.6/re.py", line 245, in _compile
raise error, v # invalid expression
sre_constants.error: unexpected end of pattern
@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi If this line 79 is
p=re.compile(r'<script[^>]+type="[^"]+">(゚ω゚.*?)(var.*?\$\(document\).*?)゚ω゚.*</script>',re.MULTILINE|re.DOTALL|re.UNICODE)#for emoji/js, try to remove#for emoji/jsat the end of the line. Otherwise post your line 79 of openload.py.@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02
i remove #for emoji/js but again erorr :
youtube-dl https://openload.co/embed/H27K9ZdaM5k/df-ts9
[Openload] H27K9ZdaM5k: Downloading webpage
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 464, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 454, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1884, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 761, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 428, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 79, in _real_extract
File "/usr/lib64/python2.6/re.py", line 190, in compile
return _compile(pattern, flags)
File "/usr/lib64/python2.6/re.py", line 245, in _compile
raise error, v # invalid expression
sre_constants.error: unexpected end of pattern
@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02
i compile youtube with make -b youtube-dl , is true command?
i use of -v and --ignore-confige parameters for download of openload , its ok?
@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi I am newbie in python and your problem related with
remodule so I need to say that we have to make sure that we use same version ofpythonbecause I don't have any problem. My version isPython version 2.7.12+ - Linux-4.8.0-44-generic-x86_64-with-Ubuntu-16.10-yakketyalso I don't think that your installation of youtube-dl is wrong. Also please look at this site which says it happens if sepecial meaning char in regex. So try to find correct regex is your mission.@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi please first try @Tithen-Firion 's code and inform us that again you have an error about
remodule. Quick link for code.@mdoulabi commented on GitHub (Mar 29, 2017):
@makgun02 @Tithen-Firion
i use Quick link but syntax error
this is error :
youtube-dl https://openload.co/embed/H27K9ZdaM5k/df-ts9
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 16, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 43, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/init.py", line 9, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/extractors.py", line 54, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/ard.py", line 7, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 85, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 79
SyntaxError: (unicode error) 'utf8' codec can't decode byte 0xb4 in position 0: invalid start byte
@makgun02 commented on GitHub (Mar 29, 2017):
@mdoulabi this seems that again you have error about
remodule and in my understanding your python version is2.6so please try to update it last version.@Tithen-Firion commented on GitHub (Mar 29, 2017):
@mdoulabi don't copy&paste that code. Right click on
Rawand save it.@makgun02 that's a problem with file encoding...
I tested my new code on Python 2.6, 2.7 and 3.6 and it works fine. Pull request here: #12603. Version from my fork is still better. I've improved both of them. They both try to use native decoding function. If that fails, version from my fork tries to evaluate JavaScript. If that fails both of them use new method with pairing your IP with Openload servers. That allows you to download videos from Openload even if both decoding methods fail. Downside is that you get slower download speed and most probably you can download max 5 files at time but I haven't tested it.
@biezom commented on GitHub (Mar 29, 2017):
@mdoulabi
it seems it's a problem with the compilation of the binary
@mdoulabi commented on GitHub (Mar 29, 2017):
@Tithen-Firion @makgun02
ops , i save raw is ok , thank u man
@mdoulabi commented on GitHub (Mar 30, 2017):
@Tithen-Firion @makgun02
its worked , but now new problem and dont work .
youtube-dl https://openload.co/embed/0f8hmXG0lNs
[Openload] 0f8hmXG0lNs: Downloading webpage
WARNING: [Openload] 0f8hmXG0lNs: Could not decode ID; falling back to method with evaluating
'Use API and/or openload.co/pair instead'
ERROR: unable to download video data: HTTP Error 404: Not Found
@chrisbbreuer commented on GitHub (Mar 30, 2017):
@mdoulabi move the discussion here https://github.com/Tithen-Firion/youtube-dl/issues/1
@makgun02 commented on GitHub (Mar 31, 2017):
@mdoulabi It still works for me. Try it again and still doesn't work please add line something like
print js_codeimmediately after lastjs_code=...for @Tithen-Firion code or For my code just remove#from this line#print js_evaland then send output to us so that we can understand what is going on background of these code. Because they updates it very frequently.@chrisbbreuer commented on GitHub (Mar 31, 2017):
I encountered the same error with your code and tithen's. I posted my output to tithen's fork.
@mdoulabi commented on GitHub (Apr 1, 2017):
@makgun02 i dont undrestand , its new error ,
youtube-dl https://openload.co/embed/0f8hmXG0lNs
[Openload] 0f8hmXG0lNs: Downloading webpage
WARNING: [Openload] 0f8hmXG0lNs: Could not decode ID; falling back to method with evaluating
'Use API and/or openload.co/pair instead'
ERROR: unable to download video data: HTTP Error 404: Not Found
@makgun02 commented on GitHub (Apr 1, 2017):
@mdoulabi which code are you using? Is it last version? Also please sure that it is last and don't forget to include
print js_codewhich I told before with all details about 1 day ago. For now I am outside so I can not test it. But I will test it when I go home.@mdoulabi commented on GitHub (Apr 1, 2017):
@makgun02 this code
@makgun02 commented on GitHub (Apr 1, 2017):
@mdoulabi please try this code. This requires
js2pymodule.@mdoulabi commented on GitHub (Apr 1, 2017):
@makgun02 thank u . its ok
@Grumph commented on GitHub (Apr 2, 2017):
@makgun02 Working like a charm here too. Thanks.
@xnidyas commented on GitHub (Apr 9, 2017):
I got youtube-dl install on my ubuntu 14 server and I keep gettings this error while trying to download openload. "-bash: syntax error near unexpected token `('" Anyone know how I can fix this please? Thank's.
@Tithen-Firion commented on GitHub (Apr 9, 2017):
@xnidyas Openload changes the code all the time now. You will have to wait for better solution.
@xnidyas commented on GitHub (Apr 9, 2017):
I read up there that some people got it working? Or did it break again @Tithen-Firion
@Tithen-Firion commented on GitHub (Apr 9, 2017):
@xnidyas This works but it only prints download URL. You can download it with
curlorwget.@TmpName commented on GitHub (Apr 10, 2017):
Hi, if you are interested, I have a python code that can interpret the JScode from openload (up to yesterday in fact ^^).
As the code is changing all the day, I m making it more for fun than a real utility.
I know the code is ugly but it was not my initial project. And for the moment I need to remove lot of hacks.
The code is totaly free to use, even I haven't put licence yet, you can change it from your side if you want.
It was not totaly secure, but not realy dangerous (I m using Eval() but with restriction)
https://github.com/TmpName/TinyJSParser
The code in the exemple file is from the JScode of the last week end, I m using https://github.com/TmpName/Fichier_en_vrac/tree/master/OpenloadExtractor to get the JScode but this file use code from other project (and with other license).
But it will never be as good as JS2py or Ducktape, it's just lighter.
@Tithen-Firion commented on GitHub (Apr 10, 2017):
@TmpName JavaScript interpreter is already in plans: #11292. You should consider contributing to it. :)
We'll have working extractor (requiring you to pair your IP on https://openload.co/pair webpage once every 4 hours or 5 downloads) with #12603.
Alternatively you can use my experimental module that uses PhantomJS so it can't be merged to master.
@TmpName commented on GitHub (Apr 11, 2017):
I have already see this issue for your JavaScript interpreter but long time, I haven't see update for it, and this one not working for me, too much work to do on it, but I'm not sure I m using the last version.
And I can't use the pair method, because this code is to be used with kodi, and kodi alone, boring to use a navigator just to solve a captcha.
And use PhantomJs or JS2py with kodi is realy heavy too. For the moment I need to try Ducktape with a wrapper.
@Tithen-Firion commented on GitHub (Apr 11, 2017):
@TmpName Pairing method is used by Exodus addon for Kodi. You can pair using your phone.
Or you could set up a server (in the same network) that uses whatever works to get video url and return it back to Kodi. That way you could use PhantomJS or even better, Selenium WebDriver (Python version).
@dpxcc commented on GitHub (Apr 11, 2017):
I just want to point out that there is another option. You can simply use the openload api (https://openload.co/api, not the hidden stream api which needs pairing)
If you are the owner of the videos, their api always work. But if you are not, their api won't work during the peak hours.
You need to crack a captcha to get the download link. But I think it is not hard using computer vision or existing captcha solving services, e.g. deathbycaptcha.
@Tithen-Firion commented on GitHub (Apr 11, 2017):
I've tried that API. It seems it's "peak hours" all the time.
@dpxcc commented on GitHub (Apr 11, 2017):
As mentioned in my previous comment, if you are not the owner of the video, the api does not work for you during the peak hours. But if you are the owner, it works 24/7.
@dpxcc commented on GitHub (Apr 11, 2017):
FYI https://github.com/dpxcc/Openload/issues/2#issuecomment-292209021
@Tithen-Firion commented on GitHub (Apr 11, 2017):
FYI:
Doesn't work:
js2py-withnot implementedjsdom- checks for[native code]in<some_built_in_function>.toString()failNot tested:
Things that work and can be merged to master:
Things that work and can't be merged to master:
@dpxcc commented on GitHub (Apr 11, 2017):
Interesting. I didn't implement the jsdom solution. It's just the first thing came to my mind to simulate a browser. It seems that jsdom has an open issue that might be related to your toString failure: https://github.com/tmpvar/jsdom/pull/1756
If you just want to build a website and use openload videos, and you don't need fine-grained control over the video (e.g. implementing danmu), the easiest way is to embed with
<iframe sandbox="allow-scripts" src="...">. This blocks all pop up ads. But their embed code does not work on certain mobile devices, due to a limitation in videojs with 302 redirect https://github.com/videojs/videojs-contrib-hls/issues/548@dammysky commented on GitHub (May 4, 2017):
Openload stream url not extracting again. Please assist
@yan12125 commented on GitHub (May 4, 2017):
Please try #12754.
@breeser commented on GitHub (Jun 6, 2017):
i just made a c# implementation if you would like to port this over to python, but I don't know how long till they change their algorithm again.
https://gist.github.com/breeser/b2642783898deb01373892779760f845
@Tithen-Firion commented on GitHub (Jun 6, 2017):
@breeser no point in doing it. They will just change it the next day. See https://github.com/rg3/youtube-dl/pull/12754 or this Gist for better solution.
@0xMH commented on GitHub (Jul 18, 2017):
I've tried to download from openload today but It just download useless video instead!
@hrxn commented on GitHub (Jul 18, 2017):
Pigeons?
@makgun02 commented on GitHub (Jul 18, 2017):
@Hrxn I think downloaded file is a text because it is only 36Bytes and probably it contains "403 Forbidden" message or something like that. For now I couldnt check it with my laptop but it seems that decoding code fails, according to @MoHD20 reports, to decode the encrypted digits to find the exact url of video.
@hrxn commented on GitHub (Jul 18, 2017):
Did you try this as well:
https://gist.github.com/Tithen-Firion/8b3921d745131837519d5c5b95b86440
?
@0xMH commented on GitHub (Jul 21, 2017):
@Hrxn isn't that's the one already used now?
I tried again today with another link and got
Bad requestresponce@Tithen-Firion commented on GitHub (Jul 21, 2017):
Nope, it's just a pull request. Openload module in master branch is still broken.
Edit: I meant this: #12754. The other link is just simple example of how to use PhantomJS to get download URL from Openload.
@revolter commented on GitHub (Aug 18, 2017):
What about https://github.com/GoogleChrome/puppeteer? Can this be used to extract it?
@makgun02 commented on GitHub (Aug 18, 2017):
@revolter I think that (In my opinion) puppeteer needs too much dependency so that it will be useless. Also recoding is required for puppeteer. It will be just waste of time.
@yan12125 commented on GitHub (Sep 15, 2017):
This is fixed in #14225, which will be included in the next version. Thanks to @Tithen-Firion!
@yan12125 commented on GitHub (Sep 15, 2017):
As a reference: one of major PhantomJS developer states that the project is now abandoned and suggests puppeteer: https://github.com/ariya/phantomjs/issues/15105#issuecomment-322850178
@partyconfetti commented on GitHub (Dec 5, 2017):
Currently working regexp way if you need;
https://gist.github.com/partyconfetti/db2adb9e5f97635e2192a426738a7cc3
@makgun02 commented on GitHub (Dec 5, 2017):
@partyconfetti thanks for your code.
(This is Turkish language) Ayrıca bir Türk'ün daha burda olması benim için güzel bir şey. Aramıza hoşgeldin. Uzun zamandır takılmıyordum burda çünkü Android uygulamam sorun çıkarmadı daha ve ayrıca site geliştiricileri de bu aralar sıkça güncellemiyor. Sıkıldılar tabi. Herneyse hayatta başarılar sana.
@partyconfetti commented on GitHub (Dec 7, 2017):
@makgun02 thanks 🎉
(bir mail at tanisalim :))
@IDerr commented on GitHub (Dec 30, 2017):
EDIT : I am idiot, haven't seen the commit made yesterday :(
Great job.
Hello,
I don't know if it only happens to me but :
Hope they didn't change again :(
EDIT :
After verbose mode 👍