Все о фотобанках и микростоках, купить и продать фото, работа для фотографа и иллюстратора


Ответ Правила нашего форума>
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.08.2018, 21:48   #31
Завсегдатай
 
Аватар для vmenshov
 
Регистрация: 21.09.2017
Адрес: Москва
Сообщения: 259
Репутация: 569
Оставлено благодарностей: 117
Получено благодарностей: 605
Отправить сообщение для vmenshov с помощью Skype
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от ToBad
vmenshov А ещё можно по 500 на странице отображать, тем самым сократив кол-во переходов: https://submit.shutterstock.com/earn...00&language=en
Хотя не знаю как будет работать если картинок будет менее 500.

Кстати вот шаттер отображает для клиентов наши портфели и вроде как кол-во страниц умноженное на кол-во работ на странице равно кол-ву работ в портфеле, однако при любой сортировки будут мелькать дубли и некоторые работы вообще не отобразятся. Это не злой умысел со сокрытием особо ценных шедевров что бы не сделать нас миллионерами, просто неграмотная организация доступа к базе.
Немного сложно сформулировал, поясню на примере.
У вас 10000 работ, это 100 страниц по 100 работ. Грузим каждую страницу, получаем 10000 номеров картинок, сортируем удаляя дубли, получаем например 9350 уникальных картинок, проделываем процедуру снова, добавляем 10000 к нашим 9350 и удаляем дубликаты, получаем 9420 и т.д. Не знаю сколько, возможно несколько десятков раз нужно проделать эту процедуру что бы получить свои 10000 уникальных картинок. Это же касается и каталог менеджера... Возможно в топперфомансом та же ситуация.

Оно и по 1000 у меня грузит без проблем. А у некоторых уже 200 запарывает. 100 вроде бы у всех работает. С дубликатами пока не заморачивался, причины их появления понятны. Распределенная система как-никак. А там обеспечить единомоментную целостность данных нереально.
vmenshov вне форума   Ответить с цитированием
Старый 21.08.2018, 21:53   #32
Завсегдатай
 
Аватар для vmenshov
 
Регистрация: 21.09.2017
Адрес: Москва
Сообщения: 259
Репутация: 569
Оставлено благодарностей: 117
Получено благодарностей: 605
Отправить сообщение для vmenshov с помощью Skype
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от ToBad
Неверно! Посмотрите тут: https://submit.shutterstock.com/api/...ditor/media/P*
Вместо звёздочки поставьте номер своей картинки. Там и дата и много чего интересного, кроме заработка.

Метод прохода по каждой страничке топперфоманса у Вас конечно странный, особенно для тех у кого много страниц там. В былые времена я на тамперманки делал скрипт BatchDeleter что бы не удалять каждую из 40 картинок в батче с подтверждением. Всё работало в фоне, очень удобно. Вот кусочек кода открывающий все картинки батча и подтверждающий удаление:
PHP код:
for (var n=1n<Math.ceil(b/20)+1n++) GM_xmlhttpRequest({method:'GET',url:a+'&pg='+n.toString(),onload:function(response){
var 
links = new DOMParser().parseFromString(response.responseText,"text/html").getElementsByTagName("a");
for(var 
i=0i<links.lengthi++){var lnk=links[i].getAttribute("href");
if ((
lnk!==null)&&(lnk.indexOf('elete.mh')>0)) GM_xmlhttpRequest({method:"GET",url:'/'+lnk.replace('&type=photos','&confirm=1&type=photos')});}}
}); 

Спасибо, посмотрю. Дело в том, что я делал приложение с учетом некоторой возможной паранойи пользователей, поэтому оно не использует xmlhttpRequest-запросы, так как для этого нужно дополнительный пермишшн в экстеншене. И если выложить это расширение в Гугл по честному, а я со временем планировал это сделать, то Хром будет пищать что, мол, приложение может слать что угодно хрен знает куда. А это может испугать особо впечатлительных. Хождение по топ перформерсам это, конечно, адок, в каком-то плане, однако совершенно честный способ с точки зрения Хрома и не вызывает у него внутреннего протеста
vmenshov вне форума   Ответить с цитированием
Старый 21.08.2018, 23:10   #33
Новичок
 
Регистрация: 29.10.2012
Сообщения: 104
Репутация: 46
Оставлено благодарностей: 30
Получено благодарностей: 51
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от vmenshov
поэтому оно не использует xmlhttpRequest-запросы, так как для этого нужно дополнительный пермишшн в экстеншене.

Нужно проверять касается ли это того же домена или только доступа к другим серверам.
Что касается паранойи, то хоть исходный код покажи - она не пройдёт, яву же тоже понимать нужно, а кто будет заморачиваться, либо поверят и примут, либо нет...
ToBad вне форума   Ответить с цитированием
Старый 22.08.2018, 00:57   #34
Завсегдатай
 
Аватар для vmenshov
 
Регистрация: 21.09.2017
Адрес: Москва
Сообщения: 259
Репутация: 569
Оставлено благодарностей: 117
Получено благодарностей: 605
Отправить сообщение для vmenshov с помощью Skype
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от ToBad
Нужно проверять касается ли это того же домена или только доступа к другим серверам.
Что касается паранойи, то хоть исходный код покажи - она не пройдёт, яву же тоже понимать нужно, а кто будет заморачиваться, либо поверят и примут, либо нет...

Это да. Есть такой сайт, Stock Performer. Он работает через собственное хромовское расширение для сбора статистики.

А там:
Код:
port.onMessage.addListener(function(msg) { // Incoming request. Fetch page. try { var xhr = new XMLHttpRequest(); xhr.open(msg.post ? "POST" : "GET",msg.url,true); xhr.onreadystatechange = function() { if(xhr.readyState == 4) { // We have a page. Return it. port.postMessage({ statusCode: xhr.status, statusText: xhr.statusText, content: xhr.responseText }); xhr = null; } }; xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"); for(var field in msg.headers) xhr.setRequestHeader(field,msg.headers[field]); xhr.overrideMimeType("text/plain; charset=x-user-defined"); xhr.send(msg.post ? msg.post : null); } catch(exception) { // No page found. port.postMessage({ status: 404, statusText: "Not Found", content: "" }); xhr = null; } });

Ну то есть посылаем в порт эстеншена ЛЮБОЙ урл и он ответит его содержимым. Секьюрность 80 lvl Если юзер залогинен где надо, то хоть почту читай, хоть на PayPal покупки совершай.

И ничего, 1600 человек поставили.

Последний раз редактировалось vmenshov, 22.08.2018 в 01:18.
vmenshov вне форума   Ответить с цитированием
Старый 22.08.2018, 01:23   #35
Новичок
 
Регистрация: 29.10.2012
Сообщения: 104
Репутация: 46
Оставлено благодарностей: 30
Получено благодарностей: 51
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от vmenshov
И ничего, 1600 человек поставили.

Во во, кому нужно - всё поймут и поставят, а кому попридираться, то повод всегда найдут и таким никогда не угодить...

Урл с инфой о картинке пригодится, что нибудь полезное нашлось помимо даты?
ToBad вне форума   Ответить с цитированием
Старый 22.08.2018, 01:49   #36
Завсегдатай
 
Аватар для vmenshov
 
Регистрация: 21.09.2017
Адрес: Москва
Сообщения: 259
Репутация: 569
Оставлено благодарностей: 117
Получено благодарностей: 605
Отправить сообщение для vmenshov с помощью Skype
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от ToBad
Во во, кому нужно - всё поймут и поставят, а кому попридираться, то повод всегда найдут и таким никогда не угодить...

Урл с инфой о картинке пригодится, что нибудь полезное нашлось помимо даты?

Кейворды могут пригодится и еще там какой-то загадочный legacyId есть. Интересно, что за штука.

Кстати, Шаттер при обычном поиске прям в коде страницы запихивает даты публикации всех найденных картинок. Но вот при поиске по портфолио - нет. Ну что за люди, а? Вот сложно им было везде пропихнуть?
vmenshov вне форума   Ответить с цитированием
Старый 22.08.2018, 03:14   #37
Новичок
 
Регистрация: 29.10.2012
Сообщения: 104
Репутация: 46
Оставлено благодарностей: 30
Получено благодарностей: 51
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от vmenshov
еще там какой-то загадочный legacyId есть. Интересно, что за штука.

Я расскажу. Изначально как только мы заливаем картинку на сайт, ей назначается U-имя. Это как и постоянный номер, только с буквой U вначале. Кстати информацию по этой картинке можно получить по той же ссылке заменив P на U и указав тот изначальный номер. Там меньше информации, забраны ключевики из файла и описание если есть, а так же уже созданы часть превью для пендинга и в полях filename и thumbnail_url уже можно встретить этот legacyId будущий. Так же уже определено P-имя в поле id. После публикации работы, кода она идёт на модерацию к ней уже можно обращаться по P имени где более полная информация, а U запись в базе перестаёт существовать через время. Иногда очень быстро, а иногда висит очень долго.
В информации по P имени в поле upload_id это как раз наше прошлое U имя, вернее номер. Тут можно и попытаться посмотреть если запись ещё существует подставив в ту ссылочку и поменяв букву на U.
В общем очень у них странно это всё замучено.
ToBad вне форума   Ответить с цитированием
Старый 22.08.2018, 03:36   #38
Новичок
 
Регистрация: 29.10.2012
Сообщения: 104
Репутация: 46
Оставлено благодарностей: 30
Получено благодарностей: 51
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

vmenshov У меня к Вам вопрос. Я себе организовал всю работу сторонними программами которые пишу на delphi 10 для инета использую synapce. Что бы работать с сайтом не делая костылей с авторизацией и гугл капчей на консольных приложениях - просто использую необходимые куки.
Всего нужно знать две: sbsid и session.
Первую я отправляю себе на хостинг раз в сутки при открытии шаттера в броузере.
Скрипт для тамперманки выглядит так:
PHP код:
// ==UserScript==
// @name         Cookie sender
// @description  Send shutter cookie for other app.
// @match        https://submit.shutterstock.com/dashboard*
// @grant       GM_xmlhttpRequest
// @grant       GM_getValue
// @grant       GM_setValue
// @require     http://code.jquery.com/jquery-latest.js
// ==/UserScript==

function getCookie(w){
cName="";
pC=new Array();
pC=document.cookie.split('; ');
for(
bb=0bb<pC.lengthbb++){
NmeVal=new Array();
NmeVal=pC[bb].split('=');
if(
NmeVal[0]==w)cName=unescape(NmeVal[1]);
}return 
cName;}

jQuery.noConflict();
jQuery(document).ready(function ($) {
var 
utc=new Date().toJSON().slice(0,10);
if (
GM_getValue("lastsend","")!=utc){
GM_setValue("lastsend",utc);
GM_xmlhttpRequest({method:"GET",url:"http://*******/?id="+getCookie('sbsid')});}
}); 
Соответственно мой софт если нет авторизации со старыми куками - берёт их с сервера и использует для входа в учётную запись.
Вторую куку я в хроме из просмотра кода копипащу, хоть и не часто, но вручную в виду того, что это httponly кука.
Инфа из инета: Куки HTTPonly не доступны из JavaScript через свойства Document.cookie, и через XMLHttpRequest и Request API, что помогает избежать межсайтового скриптинга (XSS). Устанавливайте этот флаг для тех cookie, к которым не требуется обращаться через JavaScript.
Таким образом со скрипта тамперманки я получить и отправить такую куку не могу. Однако подозреваю, что с хром расширения это сделать очень просто. Опыта написания расширений не имел, но вот например знаю что тот же Cookie Inspector отображает такую куку без проблем.
Мой скрипт превратить в extension и добавить отправку куки session - сложно?
ToBad вне форума   Ответить с цитированием
Старый 23.08.2018, 16:05   #39
Новичок
 
Регистрация: 29.10.2012
Сообщения: 104
Репутация: 46
Оставлено благодарностей: 30
Получено благодарностей: 51
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Вот и поговорили...
ToBad вне форума   Ответить с цитированием
Старый 23.08.2018, 17:06   #40
Завсегдатай
 
Аватар для vmenshov
 
Регистрация: 21.09.2017
Адрес: Москва
Сообщения: 259
Репутация: 569
Оставлено благодарностей: 117
Получено благодарностей: 605
Отправить сообщение для vmenshov с помощью Skype
По умолчанию Re: Расширение для Хрома Shutterstock Catalog Helper

Цитата:
Сообщение от ToBad
Вот и поговорили...

Сорри, времени нет проверить. Однако я практически уверен, что никакого доступа к таким кукам не будет. Расширения они на том же джаваскрипте работают что и сами сайты.
vmenshov вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей - 0 , гостей - 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +4, время: 18:38.


©2006-2010 Microstock.ru   Powered by vBulletin® Copyright ©2000-2008, Jelsoft Enterprises Ltd.   Перевод: zCarot