yt-dlp problem on Instagram (SOLVED)

Forum Forums General Software yt-dlp problem on Instagram (SOLVED)

  • This topic has 4 replies, 3 voices, and was last updated Aug 3-11:36 pm by scruffyeagle.
Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #86707
    Member
    scruffyeagle

      I’ve been using yt-dlp for downloading Instagram videos for some time now, with good results (most of the time). All I needed to do was type
      ‘yt-dlp
      into the terminal window, and press Enter.

      But, this past week, something changed and now I can’t download anything at all from Instagram. The error messages tell me that the program can’t “extract the uploader id”, and can’t “extract video url”.

      The program’s output tells me to report this at http://github.com/yt-dlp/yt-dlp. It also tells me to make sure I’m using the latest version of yt-dlp.

      The current version of yt-dlp at Github is v. “yt-dlp (2022.07.18-1)”.
      The version available via the antix repo is “yt-dlp 2021.12.27-1~mx19+1”.
      ——————–

      Using the stock 2021.12.27-1~mx19+1 file, the output was as follows:

      $ yt-dlp https://www.instagram.com/p/CgPpi2VD0at/
      [Instagram] CgPpi2VD0at: Downloading webpage
      WARNING: [Instagram] unable to extract uploader id; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.
      ERROR: [Instagram] CgPpi2VD0at: Unable to extract video url; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.
      ——————-

      Using “–verbose”, the output became:

      $ yt-dlp –verbose https://www.instagram.com/p/CgPpi2VD0at/
      [debug] Command-line config: [‘–verbose’, ‘https://www.instagram.com/p/CgPpi2VD0at/’%5D
      [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, err UTF-8, pref UTF-8
      [debug] yt-dlp version 2021.12.27 [6223f67a8]
      [debug] Python version 3.7.3 (CPython 64bit) – Linux-4.9.0-264-antix.1-amd64-smp-x86_64-with-antiX-19.4-buster
      [debug] exe versions: ffmpeg 4.1.9-0, ffprobe 4.1.9-0, phantomjs 5, rtmpdump 2.4
      [debug] Optional libraries: Cryptodome, mutagen, sqlite, websockets
      [debug] Proxy map: {}
      [debug] [Instagram] Extracting URL: https://www.instagram.com/p/CgPpi2VD0at/
      [Instagram] CgPpi2VD0at: Downloading webpage
      WARNING: [Instagram] unable to extract uploader id; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.
      ERROR: [Instagram] CgPpi2VD0at: Unable to extract video url; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.; please report this issue on https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see https://github.com/yt-dlp/yt-dlp on how to update. Be sure to call yt-dlp with the –verbose flag and include its complete output.
      File “/usr/lib/python3/dist-packages/yt_dlp/extractor/common.py”, line 599, in extract
      ie_result = self._real_extract(url)
      File “/usr/lib/python3/dist-packages/yt_dlp/extractor/instagram.py”, line 346, in _real_extract
      video_url = self._og_search_video_url(webpage, secure=False)
      File “/usr/lib/python3/dist-packages/yt_dlp/extractor/common.py”, line 1287, in _og_search_video_url
      return self._html_search_regex(regexes, html, name, **kargs)
      File “/usr/lib/python3/dist-packages/yt_dlp/extractor/common.py”, line 1182, in _html_search_regex
      res = self._search_regex(pattern, string, name, default, fatal, flags, group)
      File “/usr/lib/python3/dist-packages/yt_dlp/extractor/common.py”, line 1173, in _search_regex
      raise RegexNotFoundError(‘Unable to extract %s’ % _name)

      ————————–

      Enabling the Debian sid repo, I found “yt-dlp 2022.05.18-1”.
      I also downloaded all the Recommends files for that file, but it failed to work.

      The output from v. 2022.05.18-1 was:

      $ yt-dlp https://www.instagram.com/p/CgPpi2VD0at/
      Traceback (most recent call last):
      File “/usr/bin/yt-dlp”, line 10, in <module>
      from importlib.metadata import distribution
      ModuleNotFoundError: No module named ‘importlib.metadata’

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
      File “/usr/bin/yt-dlp”, line 13, in <module>
      from importlib_metadata import distribution
      ModuleNotFoundError: No module named ‘importlib_metadata’

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
      File “/usr/bin/yt-dlp”, line 15, in <module>
      from pkg_resources import load_entry_point
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 3191, in <module>
      @_call_aside
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 3175, in _call_aside
      f(*args, **kwargs)
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 3204, in _initialize_master_working_set
      working_set = WorkingSet._build_master()
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 583, in _build_master
      ws.require(__requires__)
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 900, in require
      needed = self.resolve(parse_requirements(requirements))
      File “/usr/lib/python3/dist-packages/pkg_resources/__init__.py”, line 786, in resolve
      raise DistributionNotFound(req, requirers)
      pkg_resources.DistributionNotFound: The ‘brotli’ distribution was not found and is required by yt-dlp
      ————————
      Note, that after it didn’t work, I disabled the Debian SID repos again.
      Also note that the version from Debian SID is not up to date, being 2 months older than the version from Github.
      ————————

      I should also mention, that the inability to download happened yesterday on my other laptop running antiX-21 also. So, the problem isn’t limited to antiX-19.4.

      I’ve hit a wall, in my attempts to fix this problem with yt-dlp – which is why I’m posting this here.

      ———————-

      Here’s the output from inxi -Fxxxrz:

      $ inxi -Fxxxrz
      System:
      Kernel: 4.9.0-264-antix.1-amd64-smp arch: x86_64 bits: 64 compiler: gcc
      v: 8.3.0 Desktop: IceWM v: 2.9.8 vt: 7 dm: SLiM v: 1.3.6
      Distro: antiX-19.4_x64-full Grup Yorum 20 May 2021
      base: Debian GNU/Linux 10 (buster)
      Machine:
      Type: Portable System: Dell product: Latitude E6400 v: N/A
      serial: <superuser required> Chassis: type: 8 serial: <superuser required>
      Mobo: Dell model: 0U692R serial: <superuser required> BIOS: Dell v: A34
      date: 06/04/2013
      Battery:
      ID-1: BAT0 charge: 57.7 Wh (218.6%) condition: 26.4/57.7 Wh (45.7%)
      volts: 11.9 min: 11.1 model: Samsung SDI DELL PT43697 type: Li-ion
      serial: <filter> status: full
      CPU:
      Info: dual core model: Intel Core2 Duo P8600 bits: 64 type: MCP
      smt: <unsupported> arch: Penryn Yorkfield rev: A cache: L1: 128 KiB
      L2: 3 MiB
      Speed (MHz): avg: 800 min/max: 800/2401 boost: enabled cores: 1: 800
      2: 800 bogomips: 9575
      Flags: ht lm nx pae sse sse2 sse3 sse4_1 ssse3 vmx
      Graphics:
      Device-1: Intel Mobile 4 Series Integrated Graphics vendor: Dell
      driver: i915 v: kernel arch: Gen5 ports: active: LVDS-1
      empty: DP-1, DP-2, DP-3, HDMI-A-1, HDMI-A-2, VGA-1 bus-ID: 00:02.0
      chip-ID: 8086:2a42 class-ID: 0300
      Display: x11 server: X.Org v: 1.20.4 driver: X: loaded: intel gpu: i915
      display-ID: :0.0 screens: 1
      Screen-1: 0 s-res: 1280×800 s-dpi: 96 s-size: 338x211mm (13.31×8.31″)
      s-diag: 398mm (15.69″)
      Monitor-1: LVDS-1 mapped: LVDS1 model: Seiko Epson 0x5441 res: 1280×800
      hz: 60 dpi: 107 size: 303x190mm (11.93×7.48″) diag: 358mm (14.1″)
      modes: 1280×800
      OpenGL: renderer: Mesa DRI Mobile Intel GM45 Express v: 2.1 Mesa 18.3.6
      direct render: Yes
      Audio:
      Device-1: Intel 82801I HD Audio vendor: Dell driver: snd_hda_intel
      v: kernel bus-ID: 00:1b.0 chip-ID: 8086:293e class-ID: 0403
      Sound Server-1: ALSA v: k4.9.0-264-antix.1-amd64-smp running: yes
      Network:
      Device-1: Intel 82567LM Gigabit Network vendor: Dell driver: e1000e
      v: 3.2.6-k port: efe0 bus-ID: 00:19.0 chip-ID: 8086:10f5 class-ID: 0200
      IF: eth0 state: up speed: 1000 Mbps duplex: full mac: <filter>
      Device-2: Intel WiFi Link 5100 driver: iwlwifi v: kernel bus-ID: 0c:00.0
      chip-ID: 8086:4232 class-ID: 0280
      IF: wlan0 state: down mac: <filter>
      RAID:
      Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci
      v: 3.0 port: 6ea0 bus-ID: 00:1f.2 chip-ID: 8086:282a rev: N/A
      class-ID: 0104
      Drives:
      Local Storage: total: 1.14 TiB used: 285.96 GiB (24.6%)
      ID-1: /dev/sda vendor: Toshiba model: MK2561GSYN size: 232.89 GiB
      speed: 3.0 Gb/s type: HDD rpm: 7200 serial: <filter> rev: 0C scheme: MBR
      ID-2: /dev/sdb type: USB vendor: Western Digital
      model: WD My Passport 0748 size: 931.48 GiB type: N/A serial: <filter>
      rev: 1019 scheme: MBR
      Partition:
      ID-1: / size: 28.71 GiB used: 6.48 GiB (22.6%) fs: ext4 dev: /dev/sda5
      Swap:
      ID-1: swap-1 type: partition size: 9.77 GiB used: 0 KiB (0.0%) priority: -1
      dev: /dev/sda3
      Sensors:
      System Temperatures: cpu: 47.0 C mobo: N/A sodimm: SODIMM C
      Fan Speeds (RPM): cpu: 3008
      Repos:
      Packages: apt: 2102
      Active apt repos in: /etc/apt/sources.list.d/antix.list
      1: deb http://mirrors.rit.edu/mxlinux/mx-packages/antix/buster/ buster main nonfree nosystemd
      Active apt repos in: /etc/apt/sources.list.d/buster-backports.list
      1: deb http://deb.debian.org/debian/ buster-backports non-free contrib main
      Active apt repos in: /etc/apt/sources.list.d/debian-stable-updates.list
      1: deb http://ftp.us.debian.org/debian/ buster-updates main contrib non-free
      Active apt repos in: /etc/apt/sources.list.d/debian.list
      1: deb http://ftp.us.debian.org/debian/ buster main contrib non-free
      2: deb http://security.debian.org/ buster/updates main contrib non-free
      No active apt repos in: /etc/apt/sources.list.d/onion.list
      No active apt repos in: /etc/apt/sources.list.d/various.list
      Info:
      Processes: 213 Uptime: 7h 50m wakeups: 5 Memory: 3.82 GiB
      used: 1.95 GiB (51.2%) Init: SysVinit v: 2.93 runlevel: 5 default: 5
      Compilers: gcc: 8.3.0 alt: 8 Shell: Bash v: 5.0.3 running-in: roxterm
      inxi: 3.3.19

      ——————————

      Github requires that I run an up to date copy of yt-dlp as prerequisite to filing an error report. Obviously, I can’t do that… What can be done to overcome this proble?

      • This topic was modified 9 months, 1 week ago by christophe.
      • This topic was modified 9 months, 1 week ago by christophe.
      • This topic was modified 9 months, 1 week ago by scruffyeagle.
      #86755
      Member
      scruffyeagle
        Helpful
        Up
        0
        ::

        I solved this problem by doing the following:

        * I uninstalled both yt-dlp and youtube-dl.

        * I went to https://github.com/yt-dlp/yt-dlp#installation. I was guided to do so, by the error output from yt-dlp. I copied the following code:

        sudo wget https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -O /usr/local/bin/yt-dlp
        sudo chmod a+rx /usr/local/bin/yt-dlp

        * I pasted that code into the terminal, and pressed Enter. After it did its stuff, I had the latest version of yt-dlp on my hard drive.

        But, it didn’t work right away. The code had placed just one copy of yt-dlp into the /usr/local/bin directory. I needed to copy it from there, into the /usr/bin directory, so the path variable could find it.

        Now, the downloading of videos from Instagram works again.

        A bonus of this, is that the version of yt-dlp I downloaded should include the ability to upgrade itself upon request from me. ( yt-dlp -U ) Or was it –U ? I’ve forgotten… It will be easy enough to test, when the time arrives.

        #86757
        Member
        ModdIt
          Helpful
          Up
          0
          ::

          poster solved problem himself.

          • This reply was modified 9 months, 1 week ago by christophe.
          • This reply was modified 9 months, 1 week ago by ModdIt.
          #86764
          Member
          blur13
            Helpful
            Up
            0
            ::

            I’ve been doing the same thing with antiX 19. The latest yt-dlp has Python 3.7.3 as a min requirement, which happens to be the version in buster stable. That will probably change soon. They do, however, offer a stand-alone binary as an “asset” of their release on github, that might be worth a try when the current python support gets deprecated.

            yt-dlp is one of those programs that really needs to be at the latest version, otherwise it wont work, or if it does, offer slow transfer speeds.

            • This reply was modified 9 months, 1 week ago by blur13.
            #86846
            Member
            scruffyeagle
              Helpful
              Up
              0
              ::

              I marked this as “SOLVED” too quickly. It turns out that the solution was only partially effective. There’s still several videos which resist being downloaded.

              After a couple of days using the latest version of yt-dlp, I encountered more videos on Instagram which couldn’t be downloaded. The errors included couldn’t extract extra data, couldn’t extract uploader ID, and couldn’t extract video data.

              I filed a trouble ticket at Github, for this problem, including the URL of a video which couldn’t be downloaded. A day or two later, I received an email about it – so, somebody is currently looking into it.

              “yt-dlp –version” will tell you which version you’re currently running.
              The current up to date version is “2022.07.18”.

            Viewing 5 posts - 1 through 5 (of 5 total)
            • You must be logged in to reply to this topic.