【问题标题】:Tunnel socket could not established无法建立隧道套接字
【发布时间】:2020-06-05 09:52:02
【问题描述】:

我正在使用这个包从Tiktok tiktok-package获取视频。

一切正常。但是现在过了一段时间,我无法获取任何数据,也许我的 IP 被阻止了。所以我为此使用了代理,这给了我 error

错误

tiktok scraper 抛出异常错误:无法建立隧道套接字,原因=getaddrinfo ENOTFOUND http

我在我的项目中运行以下行,但仍然无法正常工作

npm config set proxy http://myproxy:port
npm config set https-proxy http://myproxy:port

代码

'use strict';
 const TikTokScraper = require('tiktok-scraper');

 var main = async(user, numOfVideos) => {

 try {
    var data = [];

    var myPorxy = 'http://proxy_host:port' //my proxy and port
    const posts = await TikTokScraper.user(user, { number: numOfVideos, proxy: myPorxy }
        );

    if (posts) {
        posts.collector.map(post => {
            data.push(post);
        });
    }

    //return data;
    console.log(data);
   } catch (error) {
        return error;
  }
  };
  main('zachking', 5);

【问题讨论】:

    标签: node.js sockets npm proxy request


    【解决方案1】:

    在查看了您正在使用的数据包的 Options 之后,如果您使用的是 http 代理,您似乎不必指定协议:

    // Set proxy {string[] | string default: ''}
    // http proxy: 127.0.0.1:8080
    // socks proxy: socks5://127.0.0.1:8080
    // You can pass proxies as an array and scraper will randomly select a proxy from the array to execute the requests
    proxy: '',
    

    假设其他一切都正确var myPorxy = 'proxy_host:port' 应该可以工作。

    【讨论】:

    • 当我使用没有 http 的代理时出现错误“找不到套接字连接”
    • 您确定您使用的代理是一个有效的 http 代理吗?我刚刚测试了你的代码,一切都按预期工作。顺便说一句,此功能不需要更改 npm 代理设置。
    • 如果您console.log(error) catch 块中的错误,您得到的确切错误消息是什么?我注意到无论有没有代理,我都没有收到任何回复。这个数据包使用了一个非官方的 API,如果它还在工作,你应该与维护者联系。
    猜你喜欢
    • 2014-11-21
    • 2017-12-10
    • 1970-01-01
    • 2016-04-19
    • 1970-01-01
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多