filipedeschamps / video-maker

Projeto open source para fazer vídeos automatizados
MIT License
2.44k stars 630 forks source link

Erro Robô Imagem: Cannot read property 'length' of undefined #315

Closed oberdan-oliveira closed 10 months ago

oberdan-oliveira commented 4 years ago

Por favor, alguém poderia me ajudar com esse erro? Quando executo o bot image-robot gera a seguinte crítica: "UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'length' of undefined_".

_> [image-robot] Starting... (node:3780) ExperimentalWarning: The http2 module is an experimental API. (node:3780) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'length' of undefined at fetchImagesOfAllSentences (C:\Users\engob\Documents\GitHub\video-maker\robots\image.js:18:67) at Object.robot [as image] (C:\Users\engob\Documents\GitHub\video-maker\robots\image.js:12:9) at start (C:\Users\engob\Documents\GitHub\video-maker\index.js:15:16) at Object. (C:\Users\engob\Documents\GitHub\video-maker\index.js:22:1) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module.load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) (node:3780) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2) (node:3780) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

O proplema está na propriedade Length, porém não conseguir solucionar. Fico grato se alguém puder me ajudar.

Erro image-robot

Segue abaixo o código que está com o erro: https://github.com/filipedeschamps/video-maker/blob/master/robots/image.js

LeonardoDalessandro commented 4 years ago

Oi oberdan-oliveira vc fez algumas mudanças no seu codigo? Talvez o robô de texto nao està funcionando. Verifique que no arquivo content.json tem todas as frases no formato de array.

oberdan-oliveira commented 4 years ago

Oi oberdan-oliveira vc fez algumas mudanças no seu codigo? Talvez o robô de texto nao está funcionando. Verifique se no arquivo content.json tem todas as frases no formato de array.

Na realidade, eu não tenho esse arquivo content.json... A pasta Content está vazia :(

LeonardoDalessandro commented 4 years ago

Provavelmente é sò isso. Tenta criar o arquivo "content.json", dentro a pasta "content" e roda o node. Esse arquivo vai ser o seu DB.

oberdan-oliveira commented 4 years ago

Leonardo, por favor, poderia me enviar a estrutura desse json!? 😎 Vai me ajudar d+++

LeonardoDalessandro commented 4 years ago

no arquivo "content.json", na linha 1, coloca sò:

{}

depois roda o node de novo

oberdan-oliveira commented 4 years ago

no arquivo "content.json", na linha 1, coloca sò:

{}

depois roda o node de novo

Muitíssimo obrigado pelo apoio, Leonardo! Porém, gerou o mesmo erro com a propriedade length :(

image

LeonardoDalessandro commented 4 years ago

De nada meu amigo. Olha, pelo o que vc colocou aqui, tem algum problema antes. O text-robot nao està trazendo os conteudos de wikipedia para o seu projeto. Olha diretinho como està trabalhando essa parte.

Tenta isolar o problema assim:

const robots = {
  /*input: require('./robots/input.js'),*/

  text: require('./robots/text.js'),
  state: require('./robots/state.js'),

  /*
  image: require('./robots/image.js'),
  video: require('./robots/video.js'),
  youtube: require('./robots/youtube.js')
  */
}

async function start() {
  /*robots.input()*/

  await robots.text()

  /*
  await robots.image()
  await robots.video()
  await robots.youtube()
  */
}

start()

Assim pode fazer um debug melhor do text-robot. Coloca um console.log() pra cada input e cada output pra ver se o fluxo de dados està saido como esperado ou nao.

matbrgz commented 10 months ago

Conseguiu resolver? Espero que tenha conseguido. Estou fechando os issues relacionados a erro para entender quais erros ainda existem, quais já foram resolvidos, caso necessário posso abrir novamente.