গুগল কলাবকে সংযোগ বিচ্ছিন্ন করা থেকে কীভাবে রোধ করবেন?


119

প্রশ্ন: গুগল কলাবকে টাইমআউট থেকে সংযোগ বিচ্ছিন্ন করার থেকে প্রোগ্রামিকভাবে বাধা দেওয়ার কোনও উপায় আছে কি ?

নীচে নোটবুকটি স্বয়ংক্রিয়ভাবে সংযোগ বিচ্ছিন্ন হওয়ার শর্ত বর্ণনা করে:

গুগল কোলাব নোটবুকগুলি 90 মিনিটের অলস সময়সীমা এবং 12 ঘন্টাের নিখুঁত টাইমআউট করে। এর অর্থ, যদি ব্যবহারকারী 90 মিনিটের বেশি সময় ধরে তার গুগল কলাব নোটবুকের সাথে ইন্টারঅ্যাক্ট না করেন তবে এর উদাহরণটি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়। এছাড়াও, কোনও কুলাবের সর্বাধিক জীবনকাল 12 ঘন্টা is

স্বভাবতই, আমরা ক্রমাগত এটির সাথে ম্যানুয়ালি ইন্টারঅ্যাক্ট না করে , উদাহরণস্বরূপ সর্বাধিক গ্রাস করতে চাই । এখানে আমি সাধারণত দেখা সিস্টেমের প্রয়োজনীয়তাগুলি ধরে নেব:

  • উবুন্টু 18 এলটিএস / উইন্ডোজ 10 / ম্যাক অপারেটিং সিস্টেম
  • লিনাক্স-ভিত্তিক সিস্টেমগুলির ক্ষেত্রে, জিনোম 3 বা ইউনিটির মতো জনপ্রিয় ডিইএস ব্যবহার করুন
  • ফায়ারফক্স বা ক্রোমিয়াম ব্রাউজারগুলি

আমার এখানে উল্লেখ করা উচিত যে এ জাতীয় আচরণ গুগল কুলাবের ব্যবহারের শর্তাদি লঙ্ঘন করে না যদিও তাদের এফএকিউ অনুসারে এটি উত্সাহিত করা হয়নি (সংক্ষেপে: নৈতিকভাবে আপনার যদি প্রয়োজন না হয় তবে জিপিইউগুলির সমস্তটি ব্যবহার করা ঠিক হবে না) )।


আমার বর্তমান সমাধানটি খুব বোবা:

  • প্রথমে, আমি স্ক্রিনসেভারটি বন্ধ করি, তাই আমার স্ক্রিনটি সর্বদা চালু থাকে।
  • আমার একটি আরডুইনো বোর্ড রয়েছে, তাই আমি কেবল এটিকে একটি রাবারের ডাকি ইউএসবিতে পরিণত করেছি এবং ঘুমানোর সময় এটিকে আদিম ব্যবহারকারীর মিথস্ক্রিয়াকে অনুকরণ করে তুলি (কেবলমাত্র অন্যান্য ব্যবহারের ক্ষেত্রে এটি আমার হাতে রয়েছে)।

আরও ভাল উপায় আছে?


4
আমিও একই প্রশ্নটি নিয়ে ভাবছিলাম। শিক্ষার্থীদের থিসিস প্রতিরক্ষা চলাকালীন সময়ে সহায়ক হবে।
দিমিত্রি

4
"90 মিনিটের অলস সময়সীমা ... যদি কোনও ব্যবহারকারী 90 মিনিটেরও বেশি সময় ধরে তার গুগল কলাব নোটবুকের সাথে ইন্টারঅ্যাক্ট না করে তবে এর উদাহরণটি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়।" এটি খারাপ কারণ কেরাস্টুনার তখন ব্যবহার করা অসম্ভব। গুগল কর্মীদের আরও কঠিন চিন্তা করতে হবে, যদি তারা সত্যই জনসাধারণকে কেরাস্টুনার ব্যবহার করতে চায়।
জেফ্রি অ্যান্ডারসন

4
এই স্ক্রিপ্টটি কার্যকর করা থেকে আমি কীভাবে থামাব?
মুর্তজা কামাল

কোড নয়, আপনার সিস্টেমে একটি ছোট ওজন এবং ব্যাকস্পেস কী আপনার জন্য কৌশলটি করতে পারে। আশা করি বুঝতে পেরেছেন!
বিকালপ জৈন

উত্তর:


108

সম্পাদনা: আপাতদৃষ্টিতে সমাধানটি খুব সহজ এবং কোনও জাভাস্ক্রিপ্টের দরকার নেই। নিম্নলিখিত লাইনের নীচে কেবল একটি নতুন ঘর তৈরি করুন:

while True:pass

সেলটি এখন রান সিকোয়েন্সে রাখুন যাতে অসীম লুপ বন্ধ না হয় এবং এভাবে আপনার সেশনটি বাঁচিয়ে রাখে।

পুরানো পদ্ধতি: প্রতি 60 সেকেন্ডে সংযুক্ত বোতামটিতে ক্লিক করতে একটি জাভাস্ক্রিপ্ট ব্যবধান সেট করুন। Ctrl + Shift + I দিয়ে বিকাশকারী-সেটিংস (আপনার ওয়েব ব্রাউজারে) খুলুন এবং তারপরে কনসোল ট্যাবে ক্লিক করুন এবং এটি কনসোল প্রম্পটে টাইপ করুন। (ম্যাক টিপুন বিকল্প + কমান্ড + আই এর জন্য)

function ConnectButton(){
    console.log("Connect pushed"); 
    document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click() 
}
setInterval(ConnectButton,60000);

4
এটি আনক্যাচড টাইপ ইরার
শায়দা মুহাম্মদ

4
দেখে মনে হচ্ছে আপনার উত্তর পুরানো
জাগোথ

4
জেএস নির্বাচক
তনয় কারভে

4
ক্রোমে, আপনি একটি ক্লিকে এই স্নিপেটটি সক্রিয় করতে একটি বুকমার্ক তৈরি করতে পারেন। কেবলমাত্র নিম্নলিখিত URL টি দিয়ে একটি বুকমার্ক তৈরি করুন: javascript:void(setInterval(function(){ console.log("Connect pushed"); document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click(); },60000))(একই কমান্ডের এক-লাইন সংস্করণ)। আমি নিশ্চিত নই যে এটি অন্যান্য ব্রাউজারগুলিতে কাজ করে
pdpino

4
এই উত্তরটি পুরানো বলে মনে হচ্ছে, আমার পক্ষে কাজ হয়নি!
শাহরিয়ার কবির খান

48

যেহেতু সংযোগ বোতামটির আইডি এখন "কোলাব-কানেক্ট-বোতাম" তে পরিবর্তিত হয়েছে, নীচের কোডটি বোতামটিতে ক্লিক রাখতেই ব্যবহার করা যেতে পারে।

function ClickConnect(){
    console.log("Clicked on connect button"); 
    document.querySelector("colab-connect-button").click()
}
setInterval(ClickConnect,60000)

এখনও যদি এটি কাজ করে না, তবে নীচে দেওয়া পদক্ষেপগুলি অনুসরণ করুন:

  1. সংযোগ বোতামে ডান ক্লিক করুন (কোলাবের উপরের ডানদিকে)
  2. পরিদর্শন ক্লিক করুন
  3. বোতামটির এইচটিএমএল আইডি পান এবং নিম্নলিখিত কোডটিতে বিকল্প দিন
function ClickConnect(){
    console.log("Clicked on connect button"); 
    document.querySelector("Put ID here").click() // Change id here
}
setInterval(ClickConnect,60000)

4
নতুন বোতামের আইডি (ফেব্রুয়ারি
-2020

যদি গুগল সর্বদা এটি কাজ না করে চলোর চেষ্টা করে চলেছে (উদাহরণস্বরূপ: এটিকে একটি শ্রেণী করুন এবং সেই একই শ্রেণীর সাথে একাধিক জাল অদৃশ্য বোতাম রয়েছে) আপনি সর্বদা পদক্ষেপ 3 এর পরিবর্তে করতে পারেন:> অনুলিপি করুন -> জেএস পাথ অনুলিপি করুন
ব্যাঞ্জার_এইচডি

এখনও একই ইস্যুটি রানটাইম সংযোগ বিচ্ছিন্ন হয়ে গেছে, নিষ্ক্রিয়তার কারণে রানটাইম সংযোগ বিচ্ছিন্ন হয়েছে
SUSHMA KUMARI

4
এই স্ক্রিপ্টটি কার্যকর করা থেকে আমি কীভাবে থামাব?
মুর্তজা কামাল

4
@ মুর্তজাকমল সিআরটিএল + শিফট + আই, উত্সগুলিতে যান এবং বিরতি বোতামে ক্লিক করুন।
ফয়সাল মকবুল

19

আচ্ছা এটি আমার পক্ষে কাজ করছে -

কনসোলে নিম্নলিখিত কোডটি চালান এবং এটি আপনাকে সংযোগ বিচ্ছিন্ন করতে বাধা দেবে। পরিদর্শক দর্শন খুলতে Ctrl + Shift + i। তারপরে কনসোলে যান।

function ClickConnect(){
    console.log("Working"); 
    document.querySelector("colab-toolbar-button#connect").click() 
}
setInterval(ClickConnect,60000)

কীভাবে গুগল কোলাবকে সংযোগ বিচ্ছিন্ন করা থেকে রোধ করবেন


4
ধন্যবাদ এটি আমার জন্যও ভাল কাজ করে। (আমি গত সপ্তাহে এখানে একই মন্তব্যটি রেখেছিলাম তবে এটি অদৃশ্য হয়ে গেছে work কাজটি হারাতে হবে না, তাই এই উত্তরটি ইতিবাচক প্রতিক্রিয়া প্রাপ্য))
জেফ্রি অ্যান্ডারসন

কাজ করছে না, এখনও সংযোগ বিচ্ছিন্ন হয়ে যায়। (ফায়ারফক্স ব্রাউজার 74.0 (64-বিট) ব্যবহার করে)।
hafiz031

আপনি ব্রাউজার উইন্ডোটি ন্যূনতম করে রেখে এবং অন্যান্য অ্যাপ্লিকেশনগুলির সাথে কাজ করলেও এটি কী কাজ করে?
হ্যারিএস

16

আমার জন্য নিম্নলিখিত উদাহরণগুলি:

  • document.querySelector("#connect").click() বা
  • document.querySelector("colab-toolbar-button#connect").click() বা
  • document.querySelector("colab-connect-button").click()

ত্রুটি ছুড়েছিল।

আমাকে সেগুলি নিম্নলিখিতগুলির সাথে মানিয়ে নিতে হয়েছিল:

সংস্করণ 1:

function ClickConnect(){
  console.log("Connnect Clicked - Start"); 
  document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click();
  console.log("Connnect Clicked - End"); 
};
setInterval(ClickConnect, 60000)

সংস্করণ 2: আপনি যদি ফাংশনটি থামাতে সক্ষম হতে চান তবে এখানে নতুন কোডটি দেওয়া হয়েছে:

var startClickConnect = function startClickConnect(){
    var clickConnect = function clickConnect(){
        console.log("Connnect Clicked - Start");
        document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click();
        console.log("Connnect Clicked - End"); 
    };

    var intervalId = setInterval(clickConnect, 60000);

    var stopClickConnectHandler = function stopClickConnect() {
        console.log("Connnect Clicked Stopped - Start");
        clearInterval(intervalId);
        console.log("Connnect Clicked Stopped - End");
    };

    return stopClickConnectHandler;
};

var stopClickConnect = startClickConnect();

থামার জন্য, কল করুন:

stopClickConnect();

আমার জন্য, এটিই একমাত্র সমাধান যা ত্রুটি ছুঁড়ে না ফেলে। ধন্যবাদ
যুগল

আমি উপরোক্ত পদ্ধতিগুলি এবং আরও কয়েকটি ব্লগ চেষ্টা করেছি। এখন পর্যন্ত এবং বর্তমান সময়ের সাথে প্রাসঙ্গিক, আপনার কোড উভয়ই ত্রুটিমুক্ত কাজ করে। আপনাকে ধন্যবাদ :)
হ্যারিএস

13

পাইপুট দিয়ে আপনার পিসিতে একটি পাইথন কোড তৈরি করুন

from pynput.mouse import Button, Controller
import time

mouse = Controller()

while True:
    mouse.click(Button.left, 1)
    time.sleep(30)

আপনার ডেস্কটপে এই কোডটি চালান, তারপরে মাউসের তীরের উপরে পয়েন্ট করুন (কোল্যাবগুলি বাম প্যানেল - ফাইল বিভাগ) ডিরেক্টরিতে যে কোনও ডিরেক্টরিতে এই কোডটি প্রতিটি 30 সেকেন্ডে ডিরেক্টরিতে ক্লিক করতে থাকবে যাতে এটি প্রসারিত হবে এবং প্রতি 30 সেকেন্ডে সঙ্কুচিত হবে যাতে আপনার সেশনটি না করে মেয়াদ উত্তীর্ণ হওয়া গুরুত্বপূর্ণ - আপনাকে এই কোডটি আপনার পিসিতে চালাতে হবে


আমি পিনপুট আমদানি করার সময় এটি চেষ্টা করেছিলাম এবং একটি ডিসপ্লেনেমআরর পেয়েছি। এটি সম্ভবত কারণ আমরা কেবল একটি ব্রাউজারের মাধ্যমে (একটি হোস্টেড রানটাইম সেশনে) এবং কীবোর্ড / মাউস ইত্যাদির মাধ্যমে কোল্যাব অ্যাক্সেস করতে পারি না
হাসনাইনমামদানি

আমি মনে করি, আপনি ধারণাটি ভুল বুঝেছেন। পাইথ পাইথন দিয়ে অ্যাক্সেস করা হয় না। কেবলমাত্র উপরের কোড দ্বারা আপনার মাউস নিয়ন্ত্রিত (কারণ অনুকরণের জন্য, ব্রাউজারের সাথে মাউস মিথস্ক্রিয়া) local স্থানীয় পিসিতে ফিক্স লাইব্রেরি ইস্যু করুন
Seyon Seyon

11

আমি পুরো রাত্রে মডেলটি প্রশিক্ষণের জন্য র্যাম / ডিস্ক বোতামটিতে পর্যায়ক্রমে ক্লিক করার জন্য একটি ম্যাক্রো প্রোগ্রাম ব্যবহার করি । কৌশলটি হ'ল দুটি ক্লিকের মধ্যে সংক্ষিপ্ত বিরতিতে দুবার রাম / ডিস্ক কোলাব টুলবার বোতামে ক্লিক করার জন্য একটি ম্যাক্রো প্রোগ্রামটি কনফিগার করা যাতে রানটাইম সংযোগ বিচ্ছিন্ন হয়ে গেলেও এটি আবার সংযোগ স্থাপন করে। (প্রথম ক্লিকটি ডায়লগ বাক্সটি বন্ধ করতে ব্যবহৃত হয়েছিল এবং দ্বিতীয় ক্লিকটি পুনরায় ব্যবহারের জন্য ব্যবহৃত হয়েছিল)। তবে, আপনাকে এখনও পুরো ল্যাপটপটি সারা রাত খোলা রেখে সম্ভবত কোলাব ট্যাবটি পিন করতে হবে।


11

সংযোগ বোতামটি ক্লিক করার পরিবর্তে, আমি আমার অধিবেশনটি বাঁচিয়ে রাখতে কেবল মন্তব্য বোতামে ক্লিক করছি। (আগস্ট -2020)

function ClickConnect(){

console.log("Working"); 
document.querySelector("#comments > span").click() 
}
setInterval(ClickConnect,5000)

8

কিছু স্ক্রিপ্টগুলির সাহায্যে উপরের উত্তরগুলি সম্ভবত ভালভাবে কাজ করবে। স্ক্রিপ্টগুলি ছাড়াই সেই বিরক্তিকর সংযোগের জন্য আমার কাছে একটি সমাধান (বা এক ধরণের কৌশল) রয়েছে, বিশেষত যখন আপনার প্রোগ্রামটি আপনার গুগল ড্রাইভ থেকে ডেটা পড়তে হবে, যেমন একটি গভীর শেখার নেটওয়ার্ক মডেল প্রশিক্ষণের জন্য, যেখানে স্ক্রিপ্টগুলি reconnectঅপারেশন করার জন্য কোনও কাজে আসে না কারণ একবার আপনি আপনার কোলাবের সাথে সংযোগ বিচ্ছিন্ন করেছেন, প্রোগ্রামটি সবেমাত্র মারা গেছে, আপনার মডেলটিকে আবার ডেটাसेट পড়তে সক্ষম করার জন্য আপনার নিজের গুগল ড্রাইভের সাথে ম্যানুয়ালি সংযোগ করা উচিত, তবে স্ক্রিপ্টগুলি এগুলি করবে না।
আমি ইতিমধ্যে এটি বহুবার পরীক্ষা করেছি এবং এটি ভালভাবে কাজ করে।
আপনি যখন কোন ব্রাউজার দিয়ে কোল্যাব পৃষ্ঠায় একটি প্রোগ্রাম চালান (আমি ক্রোম ব্যবহার করি), কেবল মনে রাখবেন যে আপনার প্রোগ্রামটি চলমান শুরু হওয়ার পরে আপনার ব্রাউজারে কোনও অপারেশন করবেন না, যেমন: অন্যান্য ওয়েবপৃষ্ঠাগুলিতে স্যুইচ করুন, অন্য ওয়েবপৃষ্ঠা খুলুন বা বন্ধ করুন এবং সুতরাং, কেবল এটি কেবল সেখানে রেখে দিন এবং আপনার প্রোগ্রামটি শেষ হওয়ার অপেক্ষায় আপনি নিজের কোডগুলি লেখার জন্য পিচার্মের মতো অন্য একটি সফ্টওয়্যারটিতে স্যুইচ করতে পারেন তবে অন্য ওয়েবপৃষ্ঠায় স্যুইচ করবেন না। আমি জানি না কেন অন্য পৃষ্ঠাগুলি খুলুন বা বন্ধ করা বা স্যুইচ করা গুগল কোলাব পৃষ্ঠাটির সংযোগ সমস্যা সৃষ্টি করবে, তবে প্রতিবারই আমি আমার ব্রাউজারটিকে বিরক্ত করার চেষ্টা করব, যেমন কোনও অনুসন্ধান কাজ করার মতো, শীঘ্রই আমার কোলাবের সাথে সংযোগ বিচ্ছিন্ন হয়ে যাবে।


আমি আপনার উত্তরে যুক্ত করব যে ফায়ারফক্স এই কৌশলটি নিয়ে ভাল কাজ করছে। তবে আমার জন্য আমি আমার ম্যাকের জন্য স্লিপ মোডটি বন্ধ করে দিয়েছি এবং ব্রাউজার উইন্ডোটিকে অন্য সমস্ত উইন্ডোগুলির সামনে রেখেছিলাম যেন আমি সক্রিয়ভাবে এটিতে কাজ করছি। আমি সারা রাত ধরে রেখেছিলাম এবং এটি কাজ করে। জাভাস্ক্রিপ্টের কৌশলগুলির কোনওটিই কাজ করে না। একটি নোট হ'ল আমি গুগল কোলাব প্রো ব্যবহার করছি: সুতরাং আমি নিশ্চিত নই যে এটি নিখরচায় কোলাব দিয়ে কাজ করবে কিনা।
ইয়াসের সিনজাব

@ ইয়াসার সিনজাব আপনার সংযোজনের জন্য ধন্যবাদ, আমি নিখরচায় সংস্করণ ব্যবহার করি এবং এটি ভালভাবে কাজ করে।
হু Xixi

8

এটা চেষ্টা কর:

function ClickConnect(){
  console.log("Working"); 
  document
    .querySelector("#top-toolbar > colab-connect-button")
    .shadowRoot
    .querySelector("#connect")
    .click()
}

setInterval(ClickConnect,60000)

6

পাইথন সেলেনিয়াম ব্যবহার করা

from selenium.webdriver.common.keys import Keys
from selenium import webdriver
import time   

driver = webdriver.Chrome('/usr/lib/chromium-browser/chromedriver')

notebook_url = ''
driver.get(notebook_url)

# run all cells
driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + Keys.F9)
time.sleep(5)

# click to stay connected
start_time = time.time()
current_time = time.time()
max_time = 11*59*60 #12hours

while (current_time - start_time) < max_time:
    webdriver.ActionChains(driver).send_keys(Keys.ESCAPE).perform()
    driver.find_element_by_xpath('//*[@id="top-toolbar"]/colab-connect-button').click()
    time.sleep(30)
    current_time = time.time()

6

আমি বিশ্বাস করি না যে জাভাস্ক্রিপ্ট সমাধানগুলি আর কাজ করে। আমি আমার নোটবুকের মধ্যে থেকে এটি করছিলাম:

    from IPython.display import display, HTML
    js = ('<script>function ConnectButton(){ '
           'console.log("Connect pushed"); '
           'document.querySelector("#connect").click()} '
           'setInterval(ConnectButton,3000);</script>')
    display(HTML(js))

আপনি যখন প্রথমে একটি সমস্ত রান করেন (জাভাস্ক্রিপ্ট বা পাইথন কোড শুরু হওয়ার আগে), কনসোলটি প্রদর্শন করে:

Connected to 
wss://colab.research.google.com/api/kernels/0e1ce105-0127-4758-90e48cf801ce01a3/channels?session_id=5d8...

তবে, জাভাস্ক্রিপ্ট চলার সময় আপনি কনসোল.লগ অংশটি দেখতে পাচ্ছেন, তবে ক্লিকের অংশটি কেবল দেয়:

Connect pushed

Uncaught TypeError: Cannot read property 'click' of null
 at ConnectButton (<anonymous>:1:92)

অন্যরা পরামর্শ দিয়েছিল বোতামটির নাম # কোলাব-কানেক্ট-বোতামে পরিবর্তিত হয়েছে, তবে এটি একই ত্রুটি দেয়।

রানটাইম শুরু হওয়ার পরে, র‌্যাম / ডিস্ক প্রদর্শন করতে বোতামটি পরিবর্তন করা হয় এবং একটি ড্রপ ডাউন উপস্থাপন করা হয়। ড্রপ ডাউন-এ ক্লিক করা একটি নতুন তৈরি করে যা <DIV class=goog menu...>পূর্বে ডিওমে প্রদর্শিত হয়নি, দুটি বিকল্প "হোস্টেড রানটাইমের সাথে সংযোগ করুন" এবং "স্থানীয় রানটাইমের সাথে সংযুক্ত করুন" সহ 2 টি বিকল্প রয়েছে। যদি কনসোল উইন্ডোটি খোলা থাকে এবং উপাদানগুলি দেখায়, আপনি ড্রপডাউন উপাদানটিতে ক্লিক করার পরে আপনি এই ডিআইভি উপস্থিত দেখতে পাবেন। নতুন উইন্ডোতে প্রদর্শিত দুটি বিকল্পের মধ্যে মাউস ফোকাসকে সরানো মাত্রই ডমটিতে অতিরিক্ত উপাদান যুক্ত করে, মাউসের ফোকাসটি হ্রাস করার সাথে সাথে এগুলি ক্লিক না করেও পুরোপুরি ডম থেকে সরানো হবে।


সম্মত হন, কোনও সমাধান আছে
তালহা আনোয়ার

5

আপডেট হয়েছে। এটা আমার জন্য কাজ করে.

function ClickConnect(){
console.log("Working"); 
document.querySelector("paper-icon-button").click()
}
Const myjob = setInterval(ClickConnect, 60000)

যদি আপনার জন্য কাজ না করে থাকেন তবে ছেলেরা এটি চালিয়ে সাফ করার চেষ্টা করুন:

clearInterval(myjob)


4

আমি উপরের কোডগুলি চেষ্টা করেছিলাম কিন্তু তারা আমার পক্ষে কাজ করে নি। সুতরাং এখানে সংযোগের জন্য আমার জেএস কোড is

let interval = setInterval(function(){
let ok = document.getElementById('ok');
if(ok != null){
   console.log("Connect pushed");
ok.click();
}},60000)

এটি চালানোর জন্য আপনি এটি একইভাবে ব্যবহার করতে পারেন (এটি আপনার ব্রাউজারের কনসোলে চালান)। স্ক্রিপ্টটি বন্ধ করতে চান, আপনি লিখতে পারেন clearInterval(interval)এবং আবার চালাতে চান setInterval(interval)

আমি আশা করি এটা আপনাকে সাহায্য করবে।


4

এইটি আমার জন্য কাজ করেছে (মনে হচ্ছে তারা বোতামের শ্রেণীর নাম বা আইডি পরিবর্তন করেছে):

function ClickConnect(){
    console.log("Working"); 
    document.querySelector("colab-connect-button").click() 
}
setInterval(ClickConnect,60000)


3

আমি জিকিউরি ব্যবহার করার পরামর্শ দিচ্ছি (মনে হচ্ছে কো-ল্যাবটিতে ডিফল্টভাবে জিকুয়েরি অন্তর্ভুক্ত রয়েছে)।

function ClickConnect(){
  console.log("Working");
  $("colab-toolbar-button").click();
}
setInterval(ClickConnect,60000);

এইটি কাজ করে না:Uncaught ReferenceError: $ is not defined at ClickConnect (<anonymous>:3:3)
কেল সোলার

3

এই জাভাস্ক্রিপ্ট ফাংশনগুলির সাথে আমার একটি সমস্যা আছে:

function ClickConnect(){
    console.log("Clicked on connect button"); 
    document.querySelector("colab-connect-button").click()
}
setInterval(ClickConnect,60000)

তারা বোতামটি আসলে ক্লিক করার আগে কনসোলে "সংযুক্ত বোতামে ক্লিক করুন" মুদ্রণ করে। আপনি এই থ্রেডের বিভিন্ন উত্তর থেকে দেখতে পাচ্ছেন, গুগল কোলাব চালু হওয়ার পরে কানেক্ট কানেক্ট বোতামটির আইডি কয়েকবার পরিবর্তন হয়েছে। এবং এটি ভবিষ্যতেও পরিবর্তন করা যেতে পারে। সুতরাং আপনি যদি এই থ্রেড থেকে কোনও পুরানো উত্তর অনুলিপি করতে চলেছেন তবে এটি "সংযুক্ত বোতামে ক্লিক করা" বলতে পারে তবে এটি বাস্তবে তা নাও করতে পারে। অবশ্যই যদি ক্লিকিং কাজ না করে তবে এটি কনসোলে একটি ত্রুটি মুদ্রণ করবে তবে আপনি যদি ভুলবশত এটি নাও দেখতে পারেন তবে কি করবেন? সুতরাং আপনি আরও ভাল এই:

function ClickConnect(){
    document.querySelector("colab-connect-button").click()
    console.log("Clicked on connect button"); 
}
setInterval(ClickConnect,60000)

এবং আপনি অবশ্যই দেখতে পাবেন এটি সত্যিই কাজ করে কিনা।


3
function ClickConnect()
{
    console.log("Working...."); 
    document.querySelector("paper-button#comments").click()
}
setInterval(ClickConnect,600)

এটি আমার পক্ষে কাজ করেছে তবে বুদ্ধিমানের সাথে ব্যবহার করুন

খুশি শেখা :)


3

নিম্নলিখিত সর্বশেষ সমাধানটি আমার পক্ষে কাজ করে:

function ClickConnect(){
  colab.config
  console.log("Connnect Clicked - Start"); 
  document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click();
  console.log("Connnect Clicked - End");
};
setInterval(ClickConnect, 60000)

আপনার উত্তরের ব্যাখ্যা সহ বিবেচনা করুন।
সুরজ সুব্রামনিয়ান

3

আচ্ছা আমি কোনও অজগর লোক নই বা আমি জানি যে এই 'কলাব' এর আসল ব্যবহার কী, আমি এটি বিল্ড সিস্টেম লওল হিসাবে ব্যবহার করি। এবং আমি এটিতে এসএসএস ফরোয়ার্ডিং সেটআপ করতাম তখন এই কোডটি রাখি এবং কেবল এটি চলমান রেখে দিন এবং হ্যাঁ এটি কাজ করে।

import getpass
authtoken = getpass.getpass()

3

সর্বাধিক ভোট দেওয়া উত্তর অবশ্যই আমার পক্ষে কাজ করে তবে এটি পরিচালনা সেশন উইন্ডোটিকে বারবার পপ আপ করে তোলে।
নীচের মতো ব্রাউজার কনসোল ব্যবহার করে রিফ্রেশ বোতামটি অটো ক্লিক করে আমি এটি সমাধান করেছি

function ClickRefresh(){
    console.log("Clicked on refresh button"); 
    document.querySelector("paper-icon-button").click()
}
setInterval(ClickRefresh, 60000)

এই টুকরোটি এর জন্য আরও স্নিপেটে অবদান রাখতে নির্দ্বিধায় https://gist.github.com/Subangkar/fd1ef276fd40dc374a7c80acc247613e


3

এই কোডটি ফাইল এক্সপ্লোরার ফলকে "রিফ্রেশ ফোল্ডার" এ ক্লিক করে রাখে।

function ClickRefresh(){
  console.log("Working"); 
  document.querySelector("[icon='colab:folder-refresh']").click()
}
const myjob = setInterval(ClickRefresh, 60000)

4
নোট করুন যে ফাইলটি এক্সপ্লোরার / ফোল্ডার ফলকটি এটির কাজ করার জন্য প্রসারিত করতে হবে।
কেল সোলার

2

আপনি অ্যারো কীগুলি টিপতে পাইথন ব্যবহার করতে পারেন। আমি নীচের কোডটিতেও এলোমেলোভাবে কিছুটা যুক্ত করেছি।

from pyautogui import press, typewrite, hotkey
import time
from random import shuffle

array = ["left", "right", "up", "down"]

while True:
    shuffle(array)
    time.sleep(10)
    press(array[0])
    press(array[1])
    press(array[2])
    press(array[3])

যেভাবে আপনি সম্ভবত সামগ্রীর অ্যাক্সেস করতে চান array, এই কোডটি প্রতিটি সময় এল, আর, ইউ, ডি টিপতে পুরোপুরি দৃ determined় সংকল্পবদ্ধ বলে মনে হয়
মার্ক লাউগার্ন

কেন নয়for key in array: press(key)
পিক্সেলজার্গ

2

নীচে জাভাস্ক্রিপ্ট আমার জন্য কাজ করে। @ আর্টুর.কে.স্পেসে ক্রেডিট ।

function ColabReconnect() {
    var dialog = document.querySelector("colab-dialog.yes-no-dialog");
    var dialogTitle = dialog && dialog.querySelector("div.content-area>h2");
    if (dialogTitle && dialogTitle.innerText == "Runtime disconnected") {
        dialog.querySelector("paper-button#ok").click();
        console.log("Reconnecting...");
    } else {
        console.log("ColabReconnect is in service.");
    }
}
timerId = setInterval(ColabReconnect, 60000);

কুলাব নোটবুকে, iএকসাথে Ctrl + Shift + কীতে ক্লিক করুন । প্রম্পট লাইনে স্ক্রিপ্টটি অনুলিপি করুন এবং আটকান। তারপরে Enterসম্পাদক বন্ধ করার আগে হিট করুন ।

এটি করে, ফাংশনটি অনস্ক্রিন সংযোগ ডায়ালগটি প্রদর্শিত হয় কিনা তা প্রতি 60 সেকেন্ডে পরীক্ষা করে দেখবে এবং যদি এটি হয় তবে ফাংশনটি okআপনার জন্য স্বয়ংক্রিয়ভাবে বোতামটি ক্লিক করবে।


2

ডেটা ক্ষতি থেকে বাঁচাতে আপনি যে কক্ষটি চালাতে চান তার পরে নীচের কোডটি চালান।

!python

এই মোড থেকে প্রস্থান করতে, লিখুন

exit()

2

আমি পাইথন 3 না পাওয়া পর্যন্ত আমি সমাধানের সন্ধান করছিলাম যা এলোমেলোভাবে মাউসটিকে পিছনে পিছনে সরিয়ে নিয়ে যায় এবং সর্বদা একই জায়গায় ক্লিক করে, তবে আমি নোটবুকটিতে সক্রিয় এবং সংযোগ বিচ্ছিন্ন না হয়ে এই ভেবে কলাবকে বোকা বানানোর পক্ষে যথেষ্ট।

import numpy as np
import time
import mouse
import threading

def move_mouse():
    while True:
        random_row = np.random.random_sample()*100
        random_col = np.random.random_sample()*10
        random_time = np.random.random_sample()*np.random.random_sample() * 100
        mouse.wheel(1000)
        mouse.wheel(-1000)
        mouse.move(random_row, random_col, absolute=False, duration=0.2)
        mouse.move(-random_row, -random_col, absolute=False, duration = 0.2)
        mouse.LEFT
        time.sleep(random_time)


x = threading.Thread(target=move_mouse)
x.start()

আপনাকে প্রয়োজনীয় প্যাকেজগুলি ইনস্টল করতে হবে: sudo -H pip3 install <package_name> আপনার কেবল এটির (আপনার স্থানীয় মেশিনে) sudoমাউসটি নিয়ন্ত্রণের সাথে চালানো দরকার এবং এটি কাজ করা উচিত, যা আপনাকে কলাবের 12 ঘন্টা সেশনের পুরো সুবিধা নিতে দেয়।

ক্রেডিট: কোলাব (প্রো) ব্যবহারকারীদের জন্য: নিষ্ক্রিয়তার কারণে অধিবেশনটি সংযোগ বিচ্ছিন্ন করা থেকে আটকাচ্ছে


আমি সন্দেহ করি যে আপনি এটি একটি পৃথক
থ্রেডেও রাখতে চাইবেন

@ ফ্যালকনইউএ, গত রাতে আমি কুলাবকে আমার পিসিতে চালাচ্ছি এবং সকালে ঘুম থেকে ওঠার পরে আমি দেখতে পেলাম যে এটি এখনও চলছে। আমার ধারণা, স্ক্রিপ্টটি ভালভাবে কাজ করে তবে থ্রেড সম্পর্কে আমি কিছু সতর্কতা পেয়েছি, আপনি ঠিক বলেছেন।
সিঙ্গারিিয়াম

2

জিএনইউ কলাব আপনাকে একটি কোলাবোরেটরি ইভেন্টের শীর্ষে একটি স্ট্যান্ডার্ড নিয়মিত ডেস্কটপ পরিবেশ চালাতে দেয়।

প্রকৃতপক্ষে এটিতে মেশিনগুলিকে অলসতায় মরতে না দেওয়ার একটি ব্যবস্থা রয়েছে।

এখানে একটি ভিডিও প্রদর্শন রয়েছে


1
function ClickConnect(){
    console.log("Clicked on connect button"); 
    document.querySelector("connect").click() // Change id here
}
setInterval(ClickConnect,60000)

উপরের কোডটি চেষ্টা করুন এটি আমার জন্য কাজ করেছে :)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.