First off, I'd like to give credit to jaytea who's contributed the idea of using Google's "I'm Feeling Lucky" search engine in conjunction with locating Hawkee's user profiles. Secondly, I'd like to thank Aha2y for giving me the inspiration to write up a socket script to check up upon users' profiles via mIRC. Finally, this script is, as always, self-explanatory at its simplest. All you have to do is enter:
!, @, =, or . hawkee <UserName>
to check a user's profile. Self-trigger is support via the alias command:
/hawkeeuser <user>
; it'll come out as an echo print. The output via text trigger will come out as such:> !hawkee gooshie
Searching for gooshie's Profile... -[ gooshie**'s Profile** - **Joined:** Aug 09, 2009 ]- **Occupation:** Elect/Mech Tech **Website:** http://gooshie.cult.despayre.org/ **Interests:** http://www.hawkee.com/phpBB2/faq.php?mode=bbcode **Gains:** +72 like(s) **Last Seen On:** Sep 26, 2011 **Likes:** 63 **Snippets:** 18 **Images:** 14 **Comments:** 347 **Forum Posts:** 3 **Location:** East Coast !hawkee jaytea Searching for jaytea's Profile... -[ jaytea**'s Profile** - **Joined:** Nov 25, 2006 ]- **Gains:** +131 like(s) **Last Seen On:** Sep 25, 2011 **Likes:** 14 **Snippets:** 11 **Images:** 3 **Reviews:** 1 **Comments:** 286 Forum Posts: 196 !hawkee aha2y Searching for aha2y's Profile... -[ Aha2Y**'s Profile** - **Joined:** Mar 12, 2011 ]- **Website:** http://www.hawkee.com **Interests:** Im a coder and always willing to learn new functions/languages. **Gains:** +150 like(s) **Last Seen On:** Sep 26, 2011 **Likes:** 236 **Snippets:** 44 **Images:** 28 **Comments:** 227 **Forum Posts:** 21 **Location:** The Netherlands - Europe !hawkee alabama Searching for alabama's Profile... -[ alabama**'s Profile** - **Joined:** Sep 12, 2011 ]- **Occupation:** Professional mSL Scripting **Website:** http://www.mSLcoding.com **Interests:** Professional mSL Scripting **Gains:** +26 like(s) **Last Seen On:** Sep 26, 2011 **Likes:** 33 **Snippets:** 5 **Images:** 6 **Comments:** 45 **Forum Posts:** 1 **Location:** $mircdir !hawkee ajkdsfhajksdf Searching for ajkdsfhajksdf's Profile... No such user named "Ajkdsfhajksdf" found at Hawkee!***** ATTENTION ***** Please take note that there's a glitch that you might get from time to time. As per jaytea's mention about indexing issues, some Hawkee users who registered and never posted anything may return an incorrect result. This script does not do a direct searching at Hawkee but borrowing Google's search engine as a gateway, so sometimes the glitch may include, but is not limited to, partial profile info or embedded html codes. When that occurs, simply trigger the script again and you may get, 4 out of 5 times, a completely correct user profile info. ```mirc alias hawkeeuser { if (userpro* iswm $sock($sockname).name) sockclose $v2 var %hawkee = $+(hawkeeuser,$str($+($ticks,$r(1,9999)),6)) sockopen %hawkee www.google.com 80 sockmark %hawkee $regsubex($1,/^(.)/,$upper(\1)) $& $iif($event != text,echo -ag,.msg $iif(#,#,$nick)) set %huser_chan $token($sock(%hawkee).mark,2-3,32) } on $*:sockopen:/(hawkeeuser|userpro)\d+/:{ tokenize 32 $sock($sockname).mark if (hawkeeuser* iswm $sock($sockname).name) { if ($sockerr) { $2-3 I'm having trouble connecting! | halt } var %h = sockwrite -nt $sockname, %s = $sock($sockname).addr %h GET $+(/search?sclient=psy-ab&hl=en&site=&source=hp&q=$& $+ site%3Ahawkee.com+%22,$1,%,27s+profile%22&btnI=I%27m$& $+ +Feeling+Lucky) HTTP/1.0 | %h Host: %s %h Referer: %s | %h Connection: close | %h | return } var %h2 = sockwrite -nt $sockname | %h2 GET %huser HTTP/1.0 %h2 Host: $+($sock($sockname).addr,$str($crlf,2)) | %h2 Connection: close } on $*:sockread:/(hawkeeuser|userpro)\d+/:{ tokenize 32 $sock($sockname).mark if (hawkeeuser* iswm $sock($sockname).name) { if ($sockerr) { $2-3 I'm having trouble reading the websites! | halt } var %data | sockread %data | if (%data == HTTP/1.0 302 Found) { sockread %data | noop $regex(%data,/(\d+)/) set %huser $+(/,profile/,$regml(1)) | sockclose $sockname var %hawkee2 = $+(userpro,$str($+($ticks,$r(1,9999)),6)) sockopen %hawkee2 www.hawkee.com 80 | sockmark %hawkee2 %huser_chan return } $2-3 No such user named $qt($1) found at Hawkee.com sockclose $sockname | halt } sockread &userpro | var %hawkee = /.*> (.+'s Profile.*)\sLatest.*/ if ($regsubex($bvar(&userpro,1-).text,/<[^>]*>|\s|amp;/g,$chr(32))) { var %v1 = $v1 | if ($regex(%v1,%hawkee)) { var %i = $regsubex($token($regml(1),3-,32),/(Home >|About Me.*In)/i,) set %huser_x1 $+(-[,$chr(160),$replace($+($token(%i,1-2,32),$& $chr(32)),'s profile,$+($chr(2),'s Profile,$chr(2))),$chr(160),-,$chr(160) $& $replace($token(%i,3-6,32),joined:,$+($chr(2),Joined:,$chr(2))),$chr(160),]-) $& $iif($regex(%i,/(Occupation:.*).*L/),$replace($regml(1),$& occupation:,$+($chr(2),Occupation:,$chr(2)))) $& $iif($regex(%i,/(?<=^|\s)((?>[a-z]{3,6}:\/\/|w{3}\.)\S+)/g),$& $+($chr(2),Website:,$chr(2),$chr(32),$regml(1))) $chr(160) $& $iif($regex(%i,/(Interests.*)/),$replace($regml(1),$& interests,$+($chr(2),Interests:,$chr(2)))) } if ($regex(%v1,%hawkee)) { set %huser_x3 $regsubex($iif($regex($regml(1),/(Location:.*).*Inte/),$& $replace($regml(1),Location:,$+($chr(2),Location:,$chr(2)))),/website.*/i,) } elseif ($regex(%v1,/.*(\s.*\+\d+.*)/)) { var %1 = $regml(1) set %huser_x2 $+($chr(2),Gains:,$chr(2)) $chr(160) $token(%1,1-2,32)) $& $chr(160) $+($chr(2),Last Seen On:,$chr(2)) $chr(160) $& $token($remove($token(%1,3-,32),last seen),1-3,32) $chr(160) $& $iif($regex(%1,/.*(Likes)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Scripts)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Snippets)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Images)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Reviews)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Comments)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) $& $iif($regex(%1,/.*(Forum Posts)(.*)/),$+($chr(2),$regml(1),:,$& $chr(2)) $chr(160) $token($regml(2),1,32)) $chr(160) } :error | if (socket unavailable isin $error) { reseterror } } } on $*:text:/^[!@=.]hawkee( |$)/iS:*:{ if (!$($+(%,fcon,$site,#,$network,$cid),2)) { inc -u3 $+(%,fcon,$site,#,$network,$cid) if (!$strip($2)) { .notice $nick Usage: !, @, =, or .hawkee } else { .msg $iif(#,#,$nick) Searching for $strip($2) $+ 's Profile.... hawkeeuser $strip($2) } | return } .notice $nick Please wait at least 3 seconds before using me again! .ignore -cpu5 $nick 2 } on $*:sockclose:/(hawkeeuser|userpro)\d+/:{ if (hawkeeuser* !iswm $sock($sockname).name) { %huser_chan $+(%huser_x1,$chr(160),%huser_x2 $chr(160),%huser_x3) unset %huser* } } ```[8:00am] <~Stewie|Toclafane[away]> @hawkee toclafane1
[8:00am] <&thunderbolt> Searching for toclafane1's Profile....
[8:00am] <&thunderbolt> -[ $(document).ready(function() { - if(window.location.hash) { var comhash ]- Gains: +93 like(s) Last Seen On: Mar 25, 2012 Likes: 39 Snippets: 17 Images: 1 Comments: 366 Forum Posts: 6
[8:00am] <~Stewie|Toclafane[away]> O.o
That's what I get.
np Jethro. after 4-5 trys the bot got lucky lol.
Teh-EvilCode 00· Searching for fraguk's Profile....
Teh-EvilCode 00· -[ fraguk's Profile - Joined: Sep 24, 2008 ]- Website: http://www.fraguk.com Gains: +4 like(s) Last Seen On: Sep 30, 2011 Likes: 5 Snippets: 1 Comments: 28 Forum Posts: 25
fraguk, I did mention that some users' profiles may not come out 100% or you don't get a result in my description. Trigger it again, and if you don't get a complete result, it's not the script to blame. This script borrows Google's search engine to return the actual request. If Google can't find the user info, you don't get it. Until Hawkee makes the user search possible by names, this script will serve as a quick alternative, nothing more.
Its not showing my snippts, comments and forum posts ..
@Teh-EvilCode 00· Searching for FragUK's Profile....
@15Teh-EvilCode 00· -[ fraguk's Profile - Joined: Sep 24, 2008 ]- Website: http://www.fraguk.com Gains: +1 like(s) Last Seen On: Sep 30, 2011<
You're correct, Frenetic. Dean, this is not a direct search at Hawkee but the one that uses Google's and then establishes a socket connection to Hawkee's user profiles. You may or may not get a result, and sometimes you get the partial info. At some point you may get an output with html source bits. You'll need to trigger the script again to correct the matter. At least `Dean's join date is right on the spot. :p
Thanks Hawkee, I'll have a look at the rss link you've shown me above.
The code is there