in PHP

PHP Baca Gmail dan Simpan di MySQL (Bagian 2)

Melanjutkan post sebelumnya tentang baca gmail pake PHP, setelah berhasil mengambil email sekarang waktunya memparsing body email. Kita akan memanfaatkan fungsi imap fetchstructure untuk mengetahui apakah body email hanya terdiri dari teks saja atau multipart (berisi html). Untuk email yang hanya teks, sepertinya tidak terlalu rumit, cukup search saja kata yang dibutuhkan.

Jika body berisi html maka akan digunakan parser buatan kak Borisevich.

Pertama kita buat script untuk membaca email ini.

email-to-read
Kode read_gmail2.php.

Ups, error lagi. Ternyata butuh ekstensi dom/xml untuk menggunakan karya kakak dari Rusia itu. Pengguna Ubuntu cukup ketik perintah.

Akses lagi script read_gmail2.php.

show-recent-emailKita akan mengambil kata Ipsum pada ordered list. Baca-baca dokumentasi html parser untuk tujuan kita, dapat disederhanakan begini.

Contoh sederhana penggunaan html parser adalah.

Kembali ke script read_gmail2.php, dengan inspect element (F12) pada browser diketahui bahwa kata tersebut terdapat pada list ber-id yui_3_16_0_ym19_1_1481460480726_2769. Karena tiap li diberi id berbeda oleh yahoo (email itu dibuat melalui Yahoo) maka dapat digunakan pendekatan seperti contoh. Namun untuk email lain bisa jadi metode yang ditempuh harus berbeda. Jadi yang utama adalah inspect element dan fungsi yang tersedia dari html parsernya kakak Dmitry.

inspect-elementJadi untuk mendapatkan Ipsum, cukup mengganti read_gmail2.php di bagian ini.

Dan hasilnya.
parsing-resultOkesip, berhasil parsing html.

Post selanjutnya tinggal bagaimana menambahkan ke dalam MySQL.

Salam.

Lebih lanjut:

http://php.net/manual/en/function.imap-fetchbody.php

Write a Comment

Comment

Webmentions

  • PHP Baca Gmail dan Simpan di MySQL (Bagian 1) – aansubarkah

    […] Bagian 2 (Parsing Email Body) […]