Martii Moderator

Re: @trashbambi:

I tried adding 'the', as well as some other common words, to both scripts, saving, then refreshing twitter with F5, but neither did anything.

It's addable there however the line that contains .stream-item (and .js-tweet-text in the other gist script) doesn't appear to exist any more in the Twitter HTML source. i.e. neither script will work as is. Unfortunately a lot of work will be needed to find the right "item" i.e. text since it looks like they are randomizing classes and ids per session. Example on my end with someones tweet item:

<div lang="en" dir="auto" class="css-901oao r-18jsvk2 r-37j5jr r-a023e6 r-16dba41 r-rjixqe r-bcqeeo r-bnwqim r-qvutc0" id="id__mp586pr0e"><span class="css-901oao css-16my406 r-poiln3 r-bcqeeo r-qvutc0">I can't provide

... rather obfuscated at the actual item (available source for someone to peruse if they take this task up as well).

I'm not sure how to do the rest of what you suggested

Read... https://developer.chrome.com/docs/devtools/console/log/ and just remove the // from the //console lines so they actually run. All found with a search engine. :)

Anyhow... I don't usually write scripts for others since I have enough on my plate and I actually don't visit Twitter that often so I wouldn't be able to maintain a release. Perhaps someone else could step in for you.

or even what type of code these are written in

JavaScript


Re: @trashbambi:

Re: @trashbambi:

but I assume the:

Both places you mentioned is where I see to add filters. The second script seems a little bit easier to edit with your own custom words. Try something massively obviously like adding:

"the",

... to g_nglist and refresh the page.

The first thing I would suggest you do is, in the .user.js engine of your choice, is to make sure it is active (injected) on whatever page you are viewing on Twitter. If it is Violentmonkey then the extension icon will have a number by it. You can also check if a script is injected by clicking on it and it should be in the list depending on your configuration of that extension. Same goes with Tampermonkey.

You can also temporarily uncomment some comments in the source that start with //console and use the console tab ( Ctrl + Shift + J for PC or + + J for macOS ) to see if it's actually working in certain places where that Author placed them.


Re: @AltoRetrato:

I ended up using Python syntax

Welcome to my world with a touch of synchronous vs. asynchronous too ;)

Re: @AltoRetrato:

You don't have an IMDb account?

Not enough time plus every site has to have a unique password... brain's full in that region... but I do guest visit a lot.


Re: @sammler2021:

Unfortunately the script isn't working on my end. Can't see the "boxes" on "mymovies/list" page, to run the script.

So was this issue meant to be closed if it's not working for you? If not currently @AltoRetrato can reopen it easily.

P.S. Yes certain replies need to be done with my Admin role only above... so don't be too confused. ;)



Re: @AltoRetrato:

... Maybe you are part of an A/B test ...

Most likely. IMDB doesn't look anything like it used to a few weeks ago. Don't have an account on their site but I can possibly validate this portion from guest browsing there.

Apologies for the interruption. :)


Re: @jokomad:

Unfortunately a dialog popup that states "Not available in your region" with Betfury.io.

Might be helpful if you inspect the slider in the browser and copy a small portion of the html with the:

``` html

```

... code fence so someone might be able to make a suggestion for those that encounter this.


Re: @Just_Drawing_2035:

Have you tried the script in your browser?

I have not... because I'm working on the sites back-end atm. That has higher priority, but maybe in a day or so I can try it... just don't have the time atm... going off memory here on past things I've done and passing on a suggestion or so for you to try.

If Fx is having some issues resuming a tab then that could be a bug to search for on bugzilla... but just be sure. In the observer just do the equivalent of a "ping" console message... might fill up the log quickly until idle so be warned. ;)


Re: @Just_Drawing_2035:

The problem is that when I switch to browser-tab-B while this script is in action in browser-tab-A. The script stops working. Why is that? and how can this be solved?

That's an odd one. Usually the browser controls if a tab is suspended. If it's Firefox (Fx) then you might search for a preference on that. Chromium based (Chrome/Edge/Opera, etc.) is a bit more vague and you might not be able to get at that setting... but of course I haven't been in there much lately so can't say that for sure.

You might also want to look into trying a different // @run-at document-idle value to see if it works better. Usually in Moz based browsers and GM directly there are earlier triggers compared to that one. VM .user.js engine might have an issue too with it's script injection but less likely.

Now all this works quite well.

Glad that's getting your handles for you. :)


Re: @Just_Drawing_2035:

Also, img[0].src is throwing error. Why is that? ...

If length is 0 you are trying to access a property that doesn't exist in img[0] i.e. console.log(img[0].src);

... and how can this be resolved?

Don't call console.log(img[0].src); when .length is 0 and probably use a conditional.

That HTMLCollection section when expanded shows two image tags but the line console.log(img.length) prints "0"

How are you listing this HTMLCollection? i.e. what browser methodology and .user.js engine? This sentence doesn't seem to make much sense here.

There's a heavy amount of JavaScript happening on the sample page you gave and a sub-section of SVG text so you might need to try using a MutationObserver to get more accurate handles on what you are going for.


Nevermind... you published an obfuscated script as your second deed. Bye bye.


--- /scripts/joeman/Grepotemas/source@0.2+c526adb
+++ /scripts/joeman/Grepotemas/source
@@ -22,7 +22,7 @@
 // ==/UserScript==
 var version = '0.2';
 /**********************************************************************************************
- *  🅶🆁🅴🅿🅾🆁🅴🅼🅰🆂
+ *  🅶🆁🅴🅿🅾🆃🅴🅼🅰🆂
  *  CHANGES :
  *  0.2 :
  *  Script created

It is my understanding that whenever a script utilizes cloneInto, specifically in this .user.js with cloneInto(out, document), that says transfer the script to the sites DOM context which makes it more detectable if they are watching. If the script had stayed in a sandboxed environment (its own context) it is less likely to be detected. While cloneInto is safer from DOM to .user.js engine it doesn't stop the DOM from scouring/detecting whatever is in its own context. i.e. it's a little better than unsafeWindow however not much.

The IIFE here in the script loader appears intact, however the function call in the loaded script appears to send and an empty object. That too could lead to more detections. Which brings me to another point... script loaders aren't always good at keeping privacy all around.


Re: @ThankYou:

HTML5 stutters around when I am doing multiple things

Another note too.. in Chromium based browsers they've been "tweaking" the video acceleration just about every version (usually for DRM which is bad three letter word acronym in my book)... so if you see a brief black screen in your browser at startup that is what that is. Newer video drivers for the OS level can help improve that which can lead to less video buffering. So perhaps a different browser wouldn't be doing those sort of "tweaks" yet.


Re: @ThankYou:

I know that I was using Flash just a week ago, so I assume its still there somewhere.

Well if you look at L62, L69, and L85 it uses a hashed SWF file (the player). If I try to get that particular url from the console it says roughly:

ERROR 403: Forbidden.

... hashes are usually used for versioning but can also be used for deprecations with EOLs. So if you can find the current hashed player url itself (check the gist source and there is currently one that isn't hashed that I was able to download) you might be able to reenable that .user.js to work by changing the player url. However there is no guarantee that the site ops will keep it available in the future. The data stream url can change too and make the player useless. I don't actually use that site or that .user.js but know a bit about SWF usage and website ops.

See also:

  • object tag for how those work. It is best to try the sites settings as they know their hashes better than anyone... but the next bullet point shows...
  • Twitch blog on their deprecation... which means they probably are trying to shake off the flash usage. Deprecation notices and actual EOL can occur at different times so you might have hit that wall.

Re: @ThankYou:

HTML5 stutters around when I am doing multiple things, Flash never did.

Unfortunately Flash'es days are numbered. The days of a lot of HTML5 buffering are here already on sites that I utilize and severe degradation of the streaming quality during high traffic times with HTML5 instead of a direct, unfettered, OS connection (that has other considerations too which is why the browsers and Adobe have decided to EOL flash based technologies).

As far as twitch.tv is concerned I am unfamiliar if there is a setting to toggle it but I wouldn't count on pepper-flash for Chromium based browsers and actual Flash for other browsers being around for too many more years if not even sooner. Early 2020 is going to be a lot of massive changes to browsers and of course everywhere in between.

Alternative suggestions... which sort of lead out of OUJS here..

  1. If you are using Windows and don't need NetBIOS for connecting to another machine on your network you can try disabling that to get a bandwidth boost. OSX has something similar and Linux has Samba which may, or may not, be installed by default. Please use a search engine on how to disable those for your platform.
  2. If your network doesn't have a router... get one. That can reduce some internet connection traffic as well to help assist with some of the buffering issues of HTML5.

There are probably more suggestions but I'm already outside of OUJS with this tangent. So good luck.




Friendly ping here... :)

  1. Your Script Info currently has USO S3 urls (e.g. http://s3.amazonaws.com/uso_ss/) which were blocked about a year or so ago so they show as broken images.
  2. http://bit.ly linkage is also currently broken... plus they went https.
  3. Contribution url to http://coinbase.com is also currently broken... plus they went https too.

Just a heads up.

Thanks for the look.




Yes I'm here.

NOTE:

  • Please ignore if you wish as these comments will be done periodically throughout the day.

Re: @ne_işe_yarıyor_bu:

ne_işe_yarıyor_bune_işe_yarıyor_bu

Please do not use the underscore (_) for spaces. You nearly got marked as a spammer.

Turkish translation, courtesy of google, without the underscores to english is:

What does it work for?


Don't quite see the point of hiding a username variable when you end up sending it to the server anyway.

Then that statement negates the statement you make on the homepage here of:

it's no longer saved anywhere

Technically it is saved in the script compared to the original script which is saved with GM_setValue which is usually more secure than exposing it in the DOM. ;)

Your choice... might want to watch your down votes as this could be a reason why.


It would be a strong security measure to place your entire Userscript into an IIFE to protect the variables from being accessed in those .user.js engines that run the script in the page scope. Not every version wraps and GM stopped doing that a while back in the 3.x line when using @grant none.

e.g. username could be tampered/read with more easily if you don't... along the lines of what you said with:

it's no longer saved anywhere

(function () {
  // This is an IIFE
  
  var username = 'farow'; // Local function scope instead of global.

  // ...
}();

cuzi's script does this already.