Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.07.2016, 07:43
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

js+imacros нужна помощь новичку.
помогите поправить скрипт начинает работать и остнавливается на 10 строке и пишет такую ошибку
TypeError: dlinaMasiva[i] is undefined, line 10 (Error code: -991)
просьба помочь подправить что я не так сделал скрипт должен собирать ссылки на откр и кол больше 5000 чел и брать в масиив и выводить на дисплей помогите
var dlinaMasiva = content.document.getElementsByClassName('_pac').length
 var arrUrlTxt = []
for (i=0;i<dlinaMasiva;i++){
if (content.document.body.scrollHeight>window.innerHeight+content.document.documentElement.scrollTop==true){
	window.scrollTo(0,(content.document.documentElement.scrollHeight))
}
  var otkr = content.document.getElementsByClassName('_pac')[0].innerHTML.replace(/\&nbsp;/g, "")=='Общедоступная группа'
  var kolUhastn = content.document.getElementsByClassName('_pac')[0].innerHTML.replace(/\&nbsp;/g, "")=='5000участник'
if("otkr" >="kolUhastn"){
  var silkaHTML = dlinaMasiva[i].getElementsByClassName('_gll')[0].innerHTML; 
  var facebokUrlTxt = "https://www.facebook.com/"+(silkaHTML.substring(silkaHTML.indexof('<a href="')+10)).sprit('"')[0]
if(arrfacebookUrlTxt.indexof(facebookUrlTxt)==-1){(arrfacebookUrlTxt.push(facebookUrlTxt))}
iimDisplay("группа- "+ facebookUrlTxt+"\n"+ "длина массива- "+ content.document.getElementsByClassName('_gll').length+"\n"+"массив- "+arrfacebookUrlTxt )
}
}

Последний раз редактировалось matrix27, 16.07.2016 в 14:47.
Ответить с цитированием
  #2 (permalink)  
Старый 16.07.2016, 18:29
Аспирант
Отправить личное сообщение для Spass Посмотреть профиль Найти все сообщения от Spass
 
Регистрация: 14.07.2016
Сообщений: 86

dlinaMasiva у тебя число, какой реакции ты от него ожидаешь написав dlinaMasiva[i]?
Ответить с цитированием
  #3 (permalink)  
Старый 17.07.2016, 07:39
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

то есть dlinaMasiva[i] что надо число прописать?или в первой строке число?
Ответить с цитированием
  #4 (permalink)  
Старый 17.07.2016, 16:43
Аспирант
Отправить личное сообщение для Spass Посмотреть профиль Найти все сообщения от Spass
 
Регистрация: 14.07.2016
Сообщений: 86

var dlinaMasiva = content.document.getElementsByClassName('_pac').[B]length[/B]


dlinaMasiva это количество элементов с классом '_pac' (т.е. просто число)

var silkaHTML = dlinaMasiva[i].getElementsByClassName('_gll')[0].innerHTML;


здесь ты к числу обращаешься как к массиву
Ответить с цитированием
  #5 (permalink)  
Старый 19.07.2016, 15:06
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

js+imacros нужна помощь новичку.
привет но все равно не догоню почему он не делает сейчас пишет на10 ошибка TypeError: topik[i].getElementsByClassName(...)[0] is undefined, line 10 (Error code: -991) хотя ниже скрип вк и этот один в один только классы разные там все пашет тут не хера
вот как переделал код
var topik=content.document.getElementsByClassName('_42ef');
var dlinaMasiva = 5000;
 var arrfacebokUrlTxt = []
for (i=0;i<dlinaMasiva;i++){
 if (content.document.body.scrollHeight>window.innerHeight+content.document.documentElement.scrollTop==true){
	window.scrollTo(0,(content.document.documentElement.scrollHeight))
}
if (topik[i]==undefined){break}

var topikHTML = topik[i].getElementsByClassName('_pac')[0].innerHTML;
  var facebokUrlTxt = "https://www.facebook.com/"+(topikHTML.substring(topikHTML.indexof('<a href="')+10)).sprit('"')[0]
if(arrfacebookUrlTxt.indexof(facebookUrlTxt)==-1){(arrfacebookUrlTxt.push(facebookUrlTxt))}
iimDisplay("группа- "+ facebookUrlTxt+"\n"+ "длина массива- "+ content.document.getElementsByClassName('_gll').length+"\n"+"массив- "+arrfacebookUrlTxt )
}
помоги нубу
вот код вк
var topik=content.document.getElementsByClassName('info fl_l')
 var naydeno=parseInt(content.document.getElementsByClassName('summary')[0].textContent.replace(/\s+/g, '').substring(7))//сколько найдено сообществ
 var arrVkUrlTxt=[]
 for (i=0;i<naydeno;i++){
 if (content.document.body.scrollHeight>window.innerHeight+content.document.documentElement.scrollTop==true){
	window.scrollTo(0,(content.document.documentElement.scrollHeight))
}
if (topik[i]==undefined){break}
 var topikHTML = topik[i].getElementsByClassName('labeled')[0].innerHTML // топик HTML
 var VkUrlTxt ='https://vk.com/'+ (topikHTML.substring(topikHTML.indexOf('<a href="/')+10)).split('"')[0]// ссылка 
 if(arrVkUrlTxt.indexOf(VkUrlTxt)==-1){arrVkUrlTxt.push(VkUrlTxt)}// если нет этой ссылки, добавляем
iimDisplay("группа- "+ VkUrlTxt+"\n"+ "длина массива- "+ arrVkUrlTxt.length+"\n"+"массив- "+ arrVkUrlTxt)
 }

Последний раз редактировалось matrix27, 19.07.2016 в 15:22.
Ответить с цитированием
  #6 (permalink)  
Старый 19.07.2016, 15:35
Аспирант
Отправить личное сообщение для Spass Посмотреть профиль Найти все сообщения от Spass
 
Регистрация: 14.07.2016
Сообщений: 86

Попробуй так

var topik=content.document.getElementsByClassName('_42ef');
var dlinaMasiva = 5000;
 var arrfacebokUrlTxt = []
for (i=0;i<dlinaMasiva;i++){
 if (content.document.body.scrollHeight>window.innerHeight+content.document.documentElement.scrollTop==true){
    window.scrollTo(0,(content.document.documentElement.scrollHeight))
}
if (topik[i]!=undefined){ 
var topikHTML = topik[i].getElementsByClassName('_pac')[0].innerHTML;
  var facebokUrlTxt = "https://www.facebook.com/"+(topikHTML.substring(topikHTML.indexof('<a href="')+10)).sprit('"')[0]
if(arrfacebookUrlTxt.indexof(facebookUrlTxt)==-1){(arrfacebookUrlTxt.push(facebookUrlTxt))}
iimDisplay("группа- "+ facebookUrlTxt+"\n"+ "длина массива- "+ content.document.getElementsByClassName('_gll').length+"\n"+"массив- "+arrfacebookUrlTxt )
} else { break; }
}
Ответить с цитированием
  #7 (permalink)  
Старый 22.07.2016, 08:06
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

тоже вот такую ошибку выдает TypeError: topik[i].getElementsByClassName(...)[0] is undefined, line 10 (Error code: -991)
че надо не догоняю
Ответить с цитированием
  #8 (permalink)  
Старый 22.07.2016, 10:53
Аспирант
Отправить личное сообщение для Spass Посмотреть профиль Найти все сообщения от Spass
 
Регистрация: 14.07.2016
Сообщений: 86

topik[i].getElementsByClassName('_pac')[0].innerHTML;

У тебя в выборку ничего не падает, можно конечно проверять так
if (topik[i].getElementsByClassName('_pac').lenght) {
var topikHTML = ...
...
}


Но возможно проблема в том что у тебя получается неправильная структура (т.е. в _42ef нету блоков _pac)
Ответить с цитированием
  #9 (permalink)  
Старый 22.07.2016, 13:08
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

js+imacros нужна помощь новичку.
вот ссылка на скрин глянь если можешь я там вроде подробно обресовал
http://prntscr.com/bw2dic

Последний раз редактировалось matrix27, 22.07.2016 в 13:10. Причина: не видно ссылки на скриншот
Ответить с цитированием
  #10 (permalink)  
Старый 22.07.2016, 13:34
Новичок на форуме
Отправить личное сообщение для matrix27 Посмотреть профиль Найти все сообщения от matrix27
 
Регистрация: 07.07.2016
Сообщений: 8

Сообщение от Spass Посмотреть сообщение
topik[i].getElementsByClassName('_pac')[0].innerHTML;

У тебя в выборку ничего не падает, можно конечно проверять так
if (topik[i].getElementsByClassName('_pac').lenght) {
var topikHTML = ...
...
}


Но возможно проблема в том что у тебя получается неправильная структура (т.е. в _42ef нету блоков _pac)
вот ссылка на скрин глянь если можешь я там вроде подробно обресовал
http://prntscr.com/bw2dic
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь новичку shellddor Events/DOM/Window 4 09.06.2016 14:25
нужна помощь по JS и JQuery cema93 Работа 1 16.12.2014 19:41
Нужна помощь по снятию ограничения прога"Размеры" SerfUA jQuery 3 29.07.2014 16:57
Нужна ваша помощь по таймерам на JS((( anr001 Общие вопросы Javascript 3 18.04.2014 10:39
Кроссдоменный GET запрос. Нужна помощь! notxcain AJAX и COMET 4 07.12.2008 20:55