Google Search Filter Plus

By smk Last update Dec 7, 2011 — Installed 8,804 times.

screen shot, etc

in
Subscribe to screen shot, etc 14 posts, 2 voices



ekbworldwide Scriptwright

Your script seems like what I was looking for. You need a screen shot!

Something like this:



And give import/export example, filter by title example, etc.

______________________________________
for reference - I started this forum thread:

google search filter – Userscripts.org
http://userscripts.org/topics/20450


______________________________________
question

Should the filter list be in an idividual file? As I said in my forum post - my filter list is 138K. Is the size of my list going to create greasemonkey problems?


______________________________________
question / issue

I think you should allow editing after the block link is clicked:

example

I want to filter all of these hits:

mininova.org/com/
mininova.org/det/
mininova.org/rep/
mininova.org/search/


But I want mininova torrent links to be unfiltered:

mininova.org/tor/



______________________________________
suggestion

I think the block link should be labeled "filter". You have the only script (or add-on) I've seen that uses the word "block" for filtering. And "block" is confusing since the script isn't really blocking the site.


======================================
edit 1

I can't get regex to work with $title.

example

intitle:"The Unborn" torrent
http://www.google.com/search?num=100&hl=en&safe...

This works
unborn$title

But these don't:

\.cam\.$title
\scam\s$title
(\.|\-|\+)cam(\.|\-|\+)/i$title

======================================
edit 2

This filter doesn't work

!test!\.pdf$


example

inurl:pdf
http://www.google.com/search?num=100&hl=en&lr=&...

Nothing gets filtered.

 
smk Script's Author

Your script seems like what I was looking for. You need a screen shot! 

yeah, guess I'll make one sometime, with some sort of explanation.

Should the filter list be in an idividual file? As I said in my forum post - my filter list is 138K. Is the size of my list going to create greasemonkey problems?

I'm not sure what the effect is, but try it. I'm currently trying to improve the speed of the filtering, however it may be limited to what js can do. The script stores the filters as a greasemonkey variable, but I think 138k is all right, cause I got another script which stores lots more than that, no malfunctions

I think you should allow editing after the block link is clicked

done, please see exactly what's upgraded in this version in the source comments (also lots of other stuff)

mininova.org/com/
mininova.org/det/
mininova.org/rep/
mininova.org/search/

But I want mininova torrent links to be unfiltered:

mininova.org/tor/

go with the new feature:
mininova.org/
@@mininova.org/tor/

I think the block link should be labeled "filter". You have the only script (or add-on) I've seen that uses the word "block" for filtering. And "block" is confusing since the script isn't really blocking the site. 

done

\.cam\.$title
\scam\s$title
(\.|\-|\+)cam(\.|\-|\+)/i$title

please use adblock plus syntax:
/\.cam\./$title
/\scam\s/$title
/(\.|\-|\+)cam(\.|\-|\+)/i$title
!test!\.pdf$
=>
!test!/\.pdf$/
(!test! is a comment, hope you know that)

btw. since your native language is not English, mind giving a version of your language translated? thanks :)

 
ekbworldwide Scriptwright

done, please see exactly what's upgraded in this version in the source comments (also lots of other stuff)

IMPORTANT
Problem in the new version - the filter links don't appear

I'm not sure what the effect is...

Consider three ways to use google.

1 Hit "search".
2 Open a google bookmark.
3 Do a keyword search.

It *seems* that 2 and 3 cause more 'unresponsive script' errors than 1. Note - I have about 40 add-ons (including CustomizeGoogle).

I thought that having the list in an external file might speed things up. Also - my list is huge. 2-3 times a week - I'm going to 'backup' my list in a text file since if the script gets corrupted (by an update or whatever) the filter list could be erased.

go with the new feature:
mininova.org/
@@mininova.org/tor/

Okay, just to check - that will block all mininova.org links except mininova.org/tor/ - right?

I actually meant that the pop up was editable - like for CustomizeGoogle.



You may have implemented this already... The example is from google news - since google search is all fouled up on my firefox and nothing gets filtered or can be filtered.

please use adblock plus syntax:

!Ah!

(!test! is a comment, hope you know that)

!yup!

btw. since your native language is not English, mind giving a version of your language translated? thanks :)

Dumping your entire music collection _ONTO_ your iPod is a simple, one click process. But what about getting your music _OFF_ your iPod?

I looked at that sentence so hard I forgot a basic rule - first think of what you'd say and then apply test logic.

yeah, guess I'll make one sometime, with some sort of explanation.

Clarity leads to understanding and images are useful for clarity.

=========================
Edit 1

___________________________________
/\scam\s/$title

You might want to make it clear that this filter:

/\scam\s/$title

Is as much "google-like" as it is a regex. Much more than spaces are checked. In other words it works much like this google search:
-intitle:"cam" torrent

With the filter on - this google search
intitle:"cam" torrent

still has a few hits with "cam" in the title. I think I figured out why - the non filtered titles are using html tags in the title like this:
A Killa <em>Cam</em> Christmas 2008

___________________________________
Url issue

Are you sure you want to add information to the url? I think the doctor's motto "First do no harm" is a good idea with greasemonkey. Personally - unless it's absolutely necessary - I don't like scripts to mess with the url.

I wrote a script that creates a keyword-like hack via google if the first character is "=". Example

= yt "houses of the holy"

Does a search like this at youtube.

YT - Search result for "intitle:"houses+of+the+holy"" (page 1)
http://www.youtube.com/results?search_query=int...

Your script breaks my script:


YT - Search result for "intitle:""houses of the holy"&btnG=Search&filter-edit-area=&filter-mode=on"" (page 1)
http://www.youtube.com/results?search_query=int...

=========================
Edit 2

$title and case-insensitivity

How can I use case-insensitivity with $title?

intitle:"river"
http://www.google.com/search?num=100&hl=en&safe...=

This doesn't work:
!test!/\sriver\s/i/$title

 
ekbworldwide Scriptwright

Bug list...

!test!/\.pdf$/[plus a space]

If the filter ends with a space - the results are unpredictable.

Example

When I was !testing! (okay, I'm retiring that joke now) the filters - I got this weird pop-up.

!test!/\.pdf$/

If there's no space on the end - it seems to work fine.

========================
edit 1

I wanted to use numbers in my comments for sorting - but numbers lead to bugs:

!test!/\scam\s/$title

works, but
!1!/\scam\s/$title

doesn't filter anything

 
smk Script's Author

IMPORTANT
Problem in the new version - the filter links don't appear

fixed

I thought that having the list in an external file might speed things up. Also - my list is huge. 2-3 times a week - I'm going to 'backup' my list in a text file since if the script gets corrupted (by an update or whatever) the filter list could be erased.

unless greasemonkey gets something that has access to files, I can't do anything atm, sorry about that, however a top priority is speed improvement

Okay, just to check - that will block all mininova.org links except mininova.org/tor/ - right? 

yup

I actually meant that the pop up was editable - like for CustomizeGoogle. 

umm... I'm not really sure about that, currently, it brings up the filter editor directly, but doesn't that create some convenience when comparing & sorting with other filters? Could you please tell me some reasons, we can discuss this...actually maybe I can have an option, but still tell me your thoughts

btw. since your native language is not English, mind giving a version of your language translated? thanks :)

oops sounds funny
since your native language is not English, mind giving a translation of the script into your language? thanks

/\scam\s/$title

it works, however you've wrongly composed the filter, it should be like this:
/\scam\s/i$title

for clarity, I'll add test option soon

Your script breaks my script:

I still am not sure why the script does that, under investigation (this feature wasn't by me, but by the original script author, wasn't noticed)

!test!/\sriver\s/i/$title
!test!/\sriver\s/i$title
!test!/\.pdf$/[plus a space]

fixed

okay, I'm retiring that joke now

:p

I wanted to use numbers in my comments for sorting - but numbers lead to bugs:

It is an issue, but please don't assume things, it is actually caused by the comment being <=1 character in length, fixed


again, thanks for all that effort in testing my script :)

I'll include you in the credits

 
ekbworldwide Scriptwright

>> external file for filter list

It was just an idea to make your script more like an add-on. The filter list becomes more important than the script and - if it's possible - I think having it separate from the script is an excellent idea.

Could you please tell me some reasons, we can discuss this...actually maybe I can have an option, but still tell me your thoughts

[edit] I removed my comment here - I didn't realize that you made the filter editable.
since your native language is not English, mind giving a translation of the script into your language? thanks

My native language *is* English.
/\scam\s/$title
/\scam\s/i$title

Well - case-insensitivity wasn't working before. I installed the new version and it blocks cam - but there's still the html in the title problem. Example <em>cam</em> isn't blocked.
I still am not sure why the script does that, under investigation...

Maybe his original idea was the the link could decide if the script was on or off. I think it's a terrible idea to stick stuff on the end of the url.
It is an issue, but please don't assume things, it is actually caused by the comment being <=1 character in length, fixed

Acutally *other* single character comments worked fine. I used "!d!" to show blocked domains. So - since a single character worked but not a single number I called it a bug.

I think your script needs version numbers.

 
ekbworldwide Scriptwright

more comments & bug list

It seems comments are, um, problematic.

example

site:mininova.org/search/
http://www.google.com/search?num=100&hl=en&safe...

At the link...

This filter doesn't filter anything:

!fine_tooth-mininova!mininova.org/search/

This filter blocks all hits:
!test!mininova.org/search/

[edit 1] Ah... this filter blocks all hits too:
!fine_tooth_mininova!mininova.org/search/

I guess comments don't like dashes.

============================
edit 2
Comments are buggy - there's no other word to use.

!fine_tooth_mininova!mininova.org/search/

1. As a single filter - it works - all hits are blocked.
2. If I rename all my comments to "!test!" all hits are blocked.
3. I removed all dashes from my comments - but it seems something else in my comments is creating bugs. It seems my "intro" comments are the problem
!0 1 is for title stuff!
!0 2 is for nasty stuff!
!0 annoying is for guess what!
!0 annoying_search is for all the search spam!
!0 d is for domain!
!0 d_special when domain isn't enough!
!0 fine_tooth_... is for fine tooth comb filtering!
!0 h is for hash and the hash _ like number in btjunkie urls!
!0 p is for a single page _ more or less!
!0 sub is for sub_domain _ more or less!
[...]

I removed them - and !fine_tooth_mininova!mininova.org/search/ is working again.

============================
edit 3

!fine!/imdb.com\/.*\/trailers
!fine!/imdb.com\/.*\/trailers-screenplay

Using regex on urls seems to cause problems. Those filters can cause the entire filter list to get buggy.

============================
edit 4
I'm a bit confused about:

= setting up regex
= case-insensitively

intitle:river
http://www.google.com/search?num=100&hl=en&safe...

examples - a filter list of only one item

1
!test!river$title

result: all hits filtered
So the 'default' for $title is case-insensitive?
2
!test!/\sriver\s$title

result: no hits filtered
I don't understand why 2 doesn't work.
3
!test!/\sriver\s/i$title

result: The filter seems to work as expected.

 
smk Script's Author

I'm not sure about the first bug, the filters seem to work fine. This is the filter list I used for testing:

!0 1 is for title stuff!
!0 2 is for nasty stuff!
!0 annoying is for guess what!
!0 annoying_search is for all the search spam!
!0 d is for domain!
!0 d_special when domain isn't enough!
!0 fine_tooth_... is for fine tooth comb filtering!
!0 h is for hash and the hash _ like number in btjunkie urls!
!0 p is for a single page _ more or less!
!0 sub is for sub_domain _ more or less!
!fine_tooth_mininova!mininova.org/search/

I'm not sure I get exactly what you mean

So the 'default' for $title is case-insensitive? 

yeah, do you think I should make a case-sensitivity flag?

!test!/\sriver\s$title

regex are formatted like in javascript: they always have a starting dash and a trailing dash, after that there are the flags, i is case insensitivity, e.g.
/a/i
is case insensitive, but
/a/ is not

The filter should be like the following:

!test!/\sriver\s/$title

It made me think it's a good idea to add syntax checking too

Well - case-insensitivity wasn't working before. I installed the new version and it blocks cam - but there's still the html in the title problem. Example cam isn't blocked.

can you tell me *exactly* what your filters and search strings are? Here it works fine

My native language *is* English.

sorry, misread your other post in the forums x.x

 
ekbworldwide Scriptwright

can you tell me *exactly* what your filters and search strings are? Here it works fine


1
It seems to me that the script should carefully evaluate filters on a line by line basis and ignore badly formatted filters. The way it currently works - a single badly formatted regex can make the entire list buggy.

2
I removed these filters:
!fine!/imdb.com\/.*\/trailers
!fine!/imdb.com\/.*\/trailers-screenplay

from my filter list and a lot of bugs disappeared.

I'm not sure about the first bug...

You mean dashes inside comments? I think you need to carefully check how comments are read by the script. Since dashes cause bugs who knows what other characters could also cause bugs.

>> So the 'default' for $title is case-insensitive?

I mean that this filter:
1
!test!river$title

filters "river" and "River" and "RIVER" and...

yeah, do you think I should make a case-sensitivity flag?

Hmm.... I think it's a good idea.

The filter should be like the following:
!test!/\sriver\s/$title

"Houston, we have a problem." That filter does not work! It doesn't filter anything on the intitle:river google search.

"Houston, we have a problem."
http://www.phrases.org.uk/meanings/188425.html
http://www.youtube.com/watch?v=Mqwzf2jAghg&fmt=18

=========================
suggestion

I know I can disable/enable the script - but how about putting on "on/off" link after "Config Filters"?

For a search I almost always get 100 hits and sometimes speed is more important than filtering.

 
smk Script's Author

"Houston, we have a problem." That filter does not work! It doesn't filter anything on the intitle:river google search.

that filter is case sensitive
If you make it case-insensitive, like:
!test!/\sriver\s/i$title

it works

It seems to me that the script should carefully evaluate filters on a line by line basis and ignore badly formatted filters.

yup, I should, however I need to get syntax highlighting right to identify which ones are correct (these features will come together(

!fine!/imdb.com\/.*\/trailers
!fine!/imdb.com\/.*\/trailers-screenplay

these are fine, however without knowing your complete filter list I have no idea where the errors are coming from, so could you please provide me a list that gives errors!

You mean dashes inside comments? I think you need to carefully check how comments are read by the script. Since dashes cause bugs who knows what other characters could also cause bugs.

The script uses the regular expression:
filters=filters.replace(/\!.*?[^\\]\!/g,"").replace(/^[\s\t]+/,"").replace(/[\s\t]+$/,"");

to remove comments
I have no idea how this could go wrong, so there must be some other problem. As I said before, can you please post the EXACT filter list where you got the errors from

Suggestions

seems like good suggestions, I'll add them to the to-do list

 
ekbworldwide Scriptwright

intitle:river
http://www.google.com/search?num=100&hl=en&safe...=

!test!/\sriver\s$title
that filter is case sensitive

Houston, we still have a problem. I installed the new script - that filter still doesn't work.

C'mon how about version numbers? You could make the next script version 0.1 or something. Well - if you don't use version numbers then I can at least say "I told you so."

yup, I should, however I need to get syntax highlighting right to identify which ones are correct (these features will come together

What would be really nice - I just meant that that something is amiss with the way filters are read into the script. Characters in comments shouldn't cause bugs and regex should work as expected.
these are fine...

No they aren't.

site:mininova.org/search
http://www.google.com/search?num=10&hl=en&safe=...=

This filter list of one item works - it removes all hits:
!test!mininova.org/search/

This filter list of two items DOES NOT WORK!
!test!/imdb.com\/.*\/trailers
!test!mininova.org/search/
I have no idea how this could go wrong

I'm truly awful at regex - so I don't know either. Why not start a thread about any problems you're having in the "Script development" forum?

I had a thought about html in strings causing the script to work incorrectly. Example
A Killa <em>Cam</em> Christmas 2008

The script must be reading the inner html of the links and not the link label.

 
smk Script's Author

please-- do not assume that comments do not work, instead give me an example how would I know if it works or not otherwise???

and read my comments carefully:

regex are formatted like in javascript: they always have a starting dash and a trailing dash

however for these:

!fine!/imdb.com\/.*\/trailers
!fine!/imdb.com\/.*\/trailers-screenplay

sorry, my mistake:
!fine!/imdb\.com\/.*\/trailers/
!fine!/imdb\.com\/.*\/trailers-screenplay/
!test!/\sriver\s$title

I corrected this filter for you throughout all the posts, and you seem not have noticed once:
!test!/\sriver\s/$title
C'mon how about version numbers

they are there, in the script source
I think you mean to include them on update in metadata, yes, maybe I'll do that

 
ekbworldwide Scriptwright

intitle:river
http://www.google.com/search?aq=f&num=100&hl=en...

Filter list with one item:

!test!/\sriver\s/$title

Result: it's buggy - nothing is filtered.

By the way - my filter list is 99K - it's smaller than my customizegoogle filter since I edited it down as much as I could. I do google searches with 100 results and I get a fair number of "unresponsive script" errors.

 
smk Script's Author

I thought you knew that filter was case-sensitive

!test!/\sriver\s/i$title

Cross
Presentational HTML allowed.
Use <code> for inline code and <pre> for code blocks. Use &lt; and &gt; for literal < and >.
We help break paragraphs and link your links.
or cancel