Memanfaatkan Waktu Luang Untuk Belajar Dan Berbagi

.:: Waktu Saat Ini ::.
.:: Kunjungan Hari Ini ::.
.:: Link Sahabat ::.
.:: Tag BoardQ ::.

.:: Affiliates ::.

    Forum Kendari Info

    Forum Komunikasi Masyarakat Sultra


    I Support IGOS Summit 2

    Join 4Shared Now!

Marhaban ya Ramadhan
Rabu, 12 September 2007
Allhamdulilah.......bulan Ramadhan datang lagi.....semoga Allah swt memberikan umur panjang dan nikmat sehat sehingga kita semua dapat menjalankan ibadah Puasa hingga berakhirnya bulan ampunan ini untuk kembali fitrah.....amin...........
ngomong ngomong tentang puasa neh, kayanya belum afdol kalo saya belum memohon maaf kepada semua teman teman OL di YM, pengunjung Blog ini dan siapa saja tentunya, sekiranya selama ini terdapat salah dan khilaf yang saya perbuat baik yang disengaja maupun tidak untuk kiranya dibukakan pintu maaf begitu pun sebaliknya.........
sekedar mengingatkan teman teman semua......tentang beberapa hal yang untuk sementara selama menjalankan ibadah SAUM Puasa.......agar tidak melakukan hal hal yang dilarang karena itu semua akan berakibat pada nilai ibadah puasa kita. karena pahala ibadah puasa langsung Allah sendiri yang menilai....betul ga pak ustadz.......!

oh ya ampir lupa......neh juga halam kalo lagi puasa......hehehehehe...

posted by @dhe @ 13.11   0 comments
Parsing Microformats
Selasa, 11 September 2007
Pagi ini begitu buka email.. wah ternyata ada kiriman info menarik neh dari dan setelah baca baca sekilas, wah menarik juga neh buat nambah wawasan......hehehe.....saya belum nyobain, tapi justru malah pengen langsung di publish aja, harapan saya mudah mudahan pengunjung blog ini dapat berbagi info tentang artikel ini, ok...tanpa banyak komentar langsung aja yah......
Microformats are a way to embed specific semantic data into the HTML that we use today. One of the first questions an XML guru might ask is "Why use HTML when XML lets you create the same semantics?" I won't go into all the reasons XML might be a better or worse choice for encoding data or why microformats have chosen to use HTML as their encoding base. This article will focus more on how to extract microformats data from the HTML, how the basic parsing rules work, and how they differ from XML.
Contact Information in HTML
One of the more popular and well-established microformats is hCard. This is a vCard representation in HTML, hence the h in hCard, HTML vCard. You can read more about hCards on the microformats wiki. A vCard contains basic information about a person or an organization. This format is used extensively in address book applications as a way to backup and interchange contact information. By Internet standards it's an old format, the specification is RFC2426 from 1998. It is pre-XML, so the syntax is just simple text with a few delimiters and start and end elements. We'll use my information for this example.
FN:Brian Suda

This vCard file has a BEGIN:VCARD and an END:VCARD that acts as a container so the parser knows when to stop looking for more data. There might be multiple vCards in one file, so this nicely groups the data into distinct vCards. The FN stands for Formatted Name, which is used as the display name. The N is the structured name, which encodes things like first, last, middle names, prefixes and suffixes, all semicolon separated. Finally, URL is the URL of the web site associated with this contact.
If we were to encode this in XML it would probably look something like this:
<'fn>Brian Suda<'/fn>

Let's see how we can mark up the same vCard data in HTML using microformats, which make extensive use of the rel, rev, and class attributes to help encode the semantics. The class attribute is used in much the same way as elements are used in XML. So the previous XML example might be marked up in HTML as:
<'div class="vcard">
<'div class="fn">Brian Suda<'/div>
<'div class="n">
<'div class="given-name">Brian<'/div>
<'div class="family-name">Suda<'/div>
<'div class="url"><'/div>

If that was all microformats did, then it wouldn't be very interesting. Instead, microformats make use of the semantics of existing HTML elements to explain where the encoded data can be found. In this example everything is a <'div>, but it doesn't have to be. This is what makes extracting data from the HTML slightly more difficult for parsers, but makes it easier for publisher. Microformats do not force publishers to change their current HTML structure or publishing behavior. At the end of the day, there will be factors of 10 more people writing HTML than writing parsers, so why not make it as easy as possible for the publishers?

It bugs me when I look at the previous XML example and see "Brian Suda" encoded twice, once for FN then repeated again for N. With HTML this isn't a problem, we can combine those two XML elements using space-separated values in the class attribute. It is a little know fact that the class, rel, and rev attributes in HTML can actually take a space-separated list of values. If we combine the FN and N we get something like this:
<'div class="n fn">
<'div class="given-name">Brian<'/div>
<'div class="family-name">Suda<'/div>

Now the N property still has its children and the FN has the same value as before. Remember, HTML collapses whitespace, so the FN still is "Brian Suda" even though it is spread over two elements now with spaces inside those <'div>s.
So, we have sorted the ability to condense multiple properties with the same value. The next thing that bothers me about the XML example is that the URL is displayed, it doesn't seem natural. In XML we are talking about data, but the HTML is being displayed to people in a browser. Coincidentally, there is an <'a> element, which has an href attribute that takes the URL value and also a node-value to display more human-friendly text. We can further refine our HTML example to include the URL switching the <'div> to an <'a> element.
<'a class="n fn url" href="">
<'span class="given-name">Brian<'/span>
<'span class="family-name">Suda<'/span>

After switching to the <'a> element, we needed to change the child <'div>s to s because the <'a> element can only contain inline elements as children. Microformats do not force publishers to use specific elements, but it is recommended that you use the most semantic for each case. In the case of URL data, it makes the most sense in this case to use an <'a> element, because of this; the parsing rules change slightly (we'll discuss this in a bit).
The final hCard microformat might look something like the following in HTML:
<'div class="vcard">
<'a class="n fn url" href="">
<'span class="given-name">Brian<'/span>
<'span class="family-name">Suda<'/span>

To me, this is much more intuitive, simpler, and more compact than the XML example at the start. People are already publishing blogrolls and links in this manner and all browsers recognize and style this information, plus it can easily be passed around inside a feed.

Parsing with XSLT

Let's take that HTML example and try to parse it using XSLT.
Microformats are designed to work with HTML 4 and up. The downside to using XSLT is that the document needs to be well-formed. HTML 4 does not. HTML 4 can use <'br>, <'img>, and
elements without closing tags. If you were using a different technology like REGEXs or the DOM to extract microformats, then this is a separate issue, but with XSLT we need to clean up the HTML first. There are two simple ways to do this, TIDY or a function like HTMLlib or loadHTML, either will load the HTML document and convert it into a usable state for XSLT.
Now that we know we have a well-formed HTML document, we can begin to extract the microformat data. The following is a very rough XSLT that is far from comprehensive, but it should get you started. For more information you can see the wiki page about parsing or use the XSLT templates that do most of the heavy-lifting data extraction (available at
All the data inside an hCard is contained within the element that has a class of "vcard". In our example this is a <'div>, but it could be any element, so we'll start with:
This XPath expression looks for any element anywhere in the tree that has a class equal to "vcard". At first glance, this should find all the hCards, but the problem is that the class attribute can take a space-separated list of values. So, class="vcard myStyle" would not be picked up by that XPath expression. To fix this we can use the contains function.
This is better, now we find any element when the class attribute contains the term "vcard." This will successfully find the "vcard" in class="vcard myStyle", but there is still a problem. The contains function is not word safe it is a substring match. So, class="my-vcard" would be found by contains() just the same as class="vcard", even though "my-vcard" is not the proper name of the property to indicate this is an hCard microformat, a false-positive. To fix this we need to work some magic and pad the values we are searching for with spaces, then search for the term with the padded spaces around it. It sounds complicated, but really isn't.
//*[contains(concat(" ",@class," "), " vcard ")]
With padding, class="my-vcard" becomes " my-vcardZ " and would not contain the substring " vcard ," which solves the substring problem. In the other instance, class="vcard mySytle" becomes " vcard myStyle ," which does contain " vcard " so the space-separated values in a class issue is also solved with the padding technique.
Now that we know how to find the data, let's loop through each hCard using XSLT and begin to extract it into vCard output. At this point, it is pretty easy to see how using XSLT can let you easily convert this HTML data into just about any format you want. This includes other HTML, XML, RDF, flat vCard text, CSV, SPARQL results, JSON, or just about anything else your heart desires.
The for-each will find all instances of an hCard on the page and create a new vCard for each one. While creating each vCard it applies the templates to look for any properties inside an hCard, such as FN, N, and URL.

<'xsl:apply-templates />

The FN is a simple template that extracts the node-value of the element that contains FN as a class value.
<'xsl:template match="//*[contains(concat(" ",@class," "), " fn ")]">

The N template is slightly more complex. It first has to look for an element with a class containing N. Then it looks for child elements that contain subproperties of N, such as family-name and given-name and outputs those values.

<'xsl:value-of select="//*[contains(concat(" ",@class," "), " family-name ")]"/>
<'xsl:value-of select="//*[contains(concat(" ",@class," "), " given-name ")]"/>

The template for URL uses the choose element to determine where the most semantic information for the URL value is encoded. It tests to see if the element the class="url" is an <'a> element. If it is, then the value of URL is extracted from the @href, otherwise it uses the node-value.
<'xsl:template match="//*[contains(concat(" ",@class," "), " url ")]">
<'xsl:when test="local-name() = 'a'">
<'vxsl:alue-of select="@href"/>
<'xsl:value-of select="."/>

The <'a> element and many others carry implied semantics. In our original HTML example the URL had been encoded on a <'div>, in that case, the node-value would have been extracted and the value of URL would have been the same. This is just one of the many ways microformats are different than XML. The parsing of microformats data is dependent the type of data and on the HTML element it was encoded on.

posted by @dhe @ 09.24  
Google Translated
Senin, 10 September 2007
Wah.....da beberapa hari terakhir blog ini ga keurus, karena rutinitas kerja yang sangat padat menjelang Bulan Ramadhan.....akhirnya blog ga sempat di Update....sungguh terlalu.......
Sambil mikir mikir mau nulis apa ya? ingat masa lalu ketika bahasa menjadi media untuk berkomunikasi, kemaren buka buka raport waktu es em pe, wuakkkkk....wuakkkkkkkkk.....nilai bahasa inggris enam, di ijasah lebih parah lagi 4,5.........mudah mudahan pengunjung blog ini jangan punya nilai kaya saya yah....ha ha ha ha....waktu itu kalo udah mata pelajaran Bahasa Inggris, pasti bolos sekolah, kalo engga bolos ya nongkrong di kantin.
Kata pepatah "Penyesalan Selalu Datang Belakangan", dan memang itu benar adanya, saya ngerasain sendiri bro.....coba dulu kalo gw belajar bahasa inggris rajin pasti sekarang gw pintar bahasa inggris..........
Tapi apakah saya harus menyerah dengan keadaan sepeerti ini?, ya enggalah......capeeh deh.....udah ga jaman kali buka kamus, gitu kata anak anak sekolahan tetangga, sekarang mah udah ada itu yang namanya program translator yang dapat menterjemahkan bahasa inggris ke bahasa indonesia dan sebaliknya....oh....gitu ya....? nah kalo bahasa yang lain gimana? misalnya jepang ataw jerman?......blom tau tuh bang soalnya dikomputer saya cuman ada translator itu.
itu tadi obrolan saya dengan anak tetangga sebelah tentang pentingnya penguasaan bahasa, nah seperti kata saya tadi gimana dengan bahasa lain selain inngris, apakah udah ada softwarenya untuk itu?, sampai saat ini yang saya tau baru bahasa arab, mandarin dan jepang kalo untuk yang lain dari itu belum tau saya.....:D)

Pentingnya penguasaan bahasa atau minimal ngerti dikitlah, sangat dipahami oleh pemilik google sehingga tidak heran kalo kemudian mereka menyediakan menu translate, saat ini google telah mendukung beberapa bahasa yang dapat ditransfer, dari bahasa inggris ke jerman misalnya atau pun sebaliknya, berikut adalah bahasa yang dapat ditranslate oleh google:
* Inggris ke/dari Arab
* Inggris ke/dari China
* Inggris ke/dari Prancis
* Inggris ke/dari Jerman
* Inggris ke/dari Italia
* Inggris ke/dari Korea
* Inggris ke/dari Jepang
* Inggris ke/dari Rusia
* Inggris ke/dari Spanyol
* Inggris ke/dari Portugis
* Chinese (Simplified) to/from Chinese (Traditional)
* Jerman ke/dari Prancis
dan saat ini team google masih terus mengembangkan beberapa bahasa lagi, nah bagaimana dengan bahasa indonesia?.......anda yang akan mencari tau jawabannya! heheheh......

untuk melakukan proses translate bahasa, google udah menyediakan link khusus yaitu:, anda tinggal memilih ke bahasa mana akan ditranslate dan tetntu saja sesuai dengan bahasa yang telah di dukung oleh google.

posted by @dhe @ 10.46  
Mengenal sintaks yang umum digunakan dalam Google Hacking
Selasa, 04 September 2007
Google adalah search engine yang berada diperingkat pertama saat ini, dengan tampilan khas yang simple namun memiliki koleksi database yang lengkap ( Versi saya loh ) dan tentu saja kecepatan dalam menampilkan hasil pencarian berdasarkan hasil penyeleksian dari keyword yang kita input adalah point tertinggi yang akhirnya menempatkannya di posisi mesin pencari teratas saat ini.

Dalam proses mengumpulkan informasi yang ada dibelantara dunia maya, setiap search engine memiliki komponen yang dinamakan spider ( crawler), elemen spider akan melakukan pengaksesan situs situs internet untuk membaca dan mengikuti setiap link yang ada didalam situs tersebut.

Saya tidak akan membahas lebih jauh tentang bagaimana cara kerjanya si crawler-nya om google karena itu bukan bahasan kita kali ini……..oke……kita langsung ke bahasan inti aja……………..

Berikut adalah beberapa sintaks yang umum digunakan dalam kegiatan Google Hacking, apa perbedaan yang mendasar dari sintaks berikut dengan keyword yang umum kita input?....... jawabnya adalah “semakin spesifik keyword yang kita input maka semakin spesifik pula hasil yang diperoleh”

Nah ini dia sintaks tersebut……….

Sintaks ini akan memudahkan om google membatasi hasil pencariannya pada halaman site yang terdapat pada title, info apa aja yang dapat kita peroleh dengan sintaks ini?.....ya….misalnya saja ciri ciri sebuah system server
Sample :
intitle:username password

Nah pengen yang lebih lengkap lagi tambahin aja all didepan intitle………dah tau kan fungsinya…..heheheh……

Kalo yang ini neh berfungsi membatasi hasil pencarian hanya pada URL yang dipadukan dengan keyword yang kita input misalnya gini:
Kita pengen nyari data tentang admin…..biasanya admin ini disimpan dalam suatu database maka kita input keywordnya

Walah ini mah saya ga usah jelasin yah!


Sintaks ini untuk membatasi pencarian query hanya pada situs atw nama domain saja
Contoh : menampilkan semua site yang berdomain [dot] co [dot] id


Cihuy…..sintaks ini yang paling saya suka…….dengan menggunakan sintks ini maka saya mendapatkan hasil pencarian berbagai jenis tipe file tergantung dari tipe file yang kita input bro………
Pengen nyari materi skripsi misalnya dalam dokumen Microsoft word, maka tinggal input keywordnya plus tipe file
Contoh :
Filetype:doc tarif tol


Google akan melakukan penyeleksian hanya pada situs yang mempunyai link pada situs tertentu aja

Kalo yang ini dari artinya saja da ketahuan khan…. Google akan menampilkan site list yang memiliki kemiripan atw serupa dengan site yang kita cari


Google akan menampilkan daftar web yang udah terdaftar pada indeks om google
Contoh :

Setiap situs biasanya pada bagian body selalu terdapat text(kata kata), nah dengan sintaks ini maka hasil pencariannya akan difokuskan pada bagian ini, sintaks intext akan mengabaikan link, URL, dan title
Intext juga dapat dikembangkan menjadi allintext

Udah jelas


Kalo yang ini digunakan untuk menampilkan definisi dari sebuah kata atau frase,


Menampilkan informasi dari om google tentang situs yang di cari
Pengen hasil pencarian yang lebih spektakuler?........gabungkan berbagai sintaks tersebut dan liat hasil pencarian om google………..mudah kan!

Google hacking --------->>Efvy Zam Kerinci

posted by @dhe @ 10.27  
Komunitas Blogger Kendari

    Kendari Blogger Community

West Jakarta, Jakarta, Indonesia
Posting Sebelumnya
Arsip Blog
Link Anakonda
Tongkrongan Favorit Gue
.:: Info ::.

Powered by  MyPagerank.Net

© 2005 Memanfaatkan Waktu Luang Untuk Belajar Dan Berbagi .::Tech-Blue Template by Isnaini::.