SlideShare una empresa de Scribd logo
1 de 20
Web Scraping with PHP/CURL
Deddy Setyadi
Webbots
file(‘http://www.google.com’)
Seiring berkembangnya teknologi, fungsi pada php seperti file(), fopen(),
fgets(), tidak mampu menangani form submission, authentication, redirection,
dsb. Kemudian, dikembangkanlah sebuah library yang dinamakan cURL.
cURL Library
cURL library merupakan alat untuk melakukan transfer file dari webserver
ke remote komputer. Library yang mendukung berbagai macam internet
protokol ini mudah untuk dikonfigurasi, dan melayani berbagai macam
interaksi antara client-server.
libcurl
(Library untuk curl)
cURL Library
curl
(command line)
PHP/CURL
Modul yang ada pada PHP, sehingga PHP bisa
menggunakan fungsi-fungsi yang telah disediakan
cURL.
Mengoperasikan PHP/CURL
Inisiasi Sesi
Pengaturan
Eksekusi
Menutup Sesi
Inisiasi Sesi PHP/CURL
Sebelum menggunakan PHP/CURL,
inisiasi dulu dengan curl_init(), atau
curl_multi_init() jika URL lebih dari
satu, yang kemudian disimpan dalam
sebuah variabel.
Pengaturan PHP/CURL
Fungsi untuk mengkonfigurasi PHP/CURL
adalah curl_setopt(), atau
curl_setopt_array(), yang digunakan
untuk mengutak-atik sesi cURL dengan
berbagai opsi yang telah disediakan libcurl.
Boolean value
• CURLOPT_CONNECT_ONLY – Tidak ada data yang ditransfer
• CURLOPT_FILETIME – Dapat mengetahui tanggal modifikasi dokumen
• CURLOPT_HEADER – Header juga ikut ditransfer
• CURLOPT_POST – Untuk melakukan method POST
• CURLOPT_RETURNTRANSFER – Mengembalikan transfer sebagai string
• CURLOPT_SSL_VERIFYPEER – Jika target memiliki enkripsi SSL & HTTPS
• CURLOPT_FOLLOWLOCATION – Mengikuti redirect dari URL yang dituju.
Integer value
• CURLOPT_CONNECTTIMEOUT – Waktu tunggu saat menyambungkan ke URL.
• CURLOPT_RESUME_FROM – untuk melanjutkan sebuah transfer.
• CURLOPT_TIMEOUT – Batasan waktu untuk eksekusi cURL.
• CURLOPT_MAXREDIRS – Batasan maksimal redirect yang diperbolehkan.
String value
• CURLOPT_URL – URL yang akan diambil
• CURLOPT_USERAGENT – Konten “ User-Agent: ” header dalam HTTP request.
• CURLOPT_POSTFIELDS – data untuk setiap field dalam method POST
• CURLOPT_COOKIEJAR – File untuk menyimpan cookie saat sesi sudah ditutup.
• CURLOPT_REFERER - Konten “ Referer: ” header dalam HTTP request.
Eksekusi PHP/CURL
Dengan menggunakan curl_exec(), maka
PHP/CURL akan mengeksekusi seluruh
opsi yang telah diatur dalam curl_setopt().
Informasi dari Sesi PHP/CURL
Setiap sebuah curl_exec() dipanggil,
maka informasi pada saat sesi dieksekusi
juga tersedia. Untuk mengetahui informasi
tersebut, gunakan fungsi curl_getinfo().
Hasil dari curl_getinfo()
Menampilkan error dari Sesi PHP/CURL
Untuk menampilkan error, maka dapat memanggil fungsi
curl_error(). Fungsi ini akan menampilkan pesan error
untuk operasi PHP/CURL yang terakhir kali dijalankan.
Untuk lebih jelas mengenai pesan error yang dihasilkan
cURL, bisa membuka http://curl.haxx.se/libcurl/c/libcurl-
errors.html
Menutup Sesi PHP/CURL
Ketika sudah selesai menggunakan
PHP/CURL, maka sesegera mungkin untuk
menutup sesi cURL ini dengan memanggil
fungsi curl_close().
Demo
Referensi
• http://php.net/manual/en/ref.curl.php
• http://etelej.github.io/how-to-use-php-curl-basics/
• http://www.slideshare.net/teenmaxinfo/curl-php-bookv32
• Schrenk, Michael. 2012. Webbots, spiders, and screen scrapers : a guide to developing
internet agents with PHP/CURL. No Starch Press, Inc. Diakses 10 januari 2015, dari
libgen.info.
• Ward, Jacob. 2013. Instant PHP Web Scraping. Packt Publishing Ltd. Diakses 15 Januari
2015, dari libgen.info.
Udah.

Más contenido relacionado

La actualidad más candente

Remastering Ubuntu 17.10 Dengan Ubuntu Customization Kit
Remastering Ubuntu 17.10 Dengan Ubuntu Customization KitRemastering Ubuntu 17.10 Dengan Ubuntu Customization Kit
Remastering Ubuntu 17.10 Dengan Ubuntu Customization KitMuhammad Yuga Nugraha
 
Tugas 1 tkj (perintah dasar linux ubuntu)
Tugas 1 tkj (perintah dasar linux ubuntu)Tugas 1 tkj (perintah dasar linux ubuntu)
Tugas 1 tkj (perintah dasar linux ubuntu)RX-0-3
 
Tugas Komputasi Paraller "Proses Penginstallan Hadoop
Tugas Komputasi Paraller "Proses Penginstallan Hadoop Tugas Komputasi Paraller "Proses Penginstallan Hadoop
Tugas Komputasi Paraller "Proses Penginstallan Hadoop Ivul Varel Fu
 
50 Command linux
50 Command linux50 Command linux
50 Command linuxjoandi11
 
Lima puluh perintah dasar linux
Lima puluh perintah dasar linuxLima puluh perintah dasar linux
Lima puluh perintah dasar linuxmuhamadpandu1
 
Faujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iiFaujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iikharliem
 
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)Fadhel Hizham
 
100 perintah dasar linux
100 perintah dasar linux100 perintah dasar linux
100 perintah dasar linuxALI FIKRI
 
Dasar dasar perintah linux dan sistem derektory pada linux ok
Dasar dasar perintah linux dan sistem derektory pada linux okDasar dasar perintah linux dan sistem derektory pada linux ok
Dasar dasar perintah linux dan sistem derektory pada linux okNie Andini
 
My sql python_cherrypy
My sql python_cherrypyMy sql python_cherrypy
My sql python_cherrypyAGus Msln
 
Konfigurasi file sharing
Konfigurasi file sharingKonfigurasi file sharing
Konfigurasi file sharingnasib silaban
 
Pembahasansoallks2013
Pembahasansoallks2013Pembahasansoallks2013
Pembahasansoallks2013dedd_simbolon
 
Proses dan Manajemen Proses di Linux
Proses dan Manajemen Proses di LinuxProses dan Manajemen Proses di Linux
Proses dan Manajemen Proses di LinuxRobby Firmansyah
 
Faujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iiFaujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iikharliem
 
cara install ubuntu server
cara install ubuntu servercara install ubuntu server
cara install ubuntu serveraho77
 

La actualidad más candente (20)

Remastering Ubuntu 17.10 Dengan Ubuntu Customization Kit
Remastering Ubuntu 17.10 Dengan Ubuntu Customization KitRemastering Ubuntu 17.10 Dengan Ubuntu Customization Kit
Remastering Ubuntu 17.10 Dengan Ubuntu Customization Kit
 
Tugas 1 tkj (perintah dasar linux ubuntu)
Tugas 1 tkj (perintah dasar linux ubuntu)Tugas 1 tkj (perintah dasar linux ubuntu)
Tugas 1 tkj (perintah dasar linux ubuntu)
 
Tugas Komputasi Paraller "Proses Penginstallan Hadoop
Tugas Komputasi Paraller "Proses Penginstallan Hadoop Tugas Komputasi Paraller "Proses Penginstallan Hadoop
Tugas Komputasi Paraller "Proses Penginstallan Hadoop
 
Perintah dsar linux
Perintah dsar linuxPerintah dsar linux
Perintah dsar linux
 
50 Command linux
50 Command linux50 Command linux
50 Command linux
 
Lima puluh perintah dasar linux
Lima puluh perintah dasar linuxLima puluh perintah dasar linux
Lima puluh perintah dasar linux
 
Faujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iiFaujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so ii
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linux
 
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)
Fungsi dan Cara Penggunaan Terminal (CLI, Gedit, dan VI Editor)
 
100 perintah dasar linux
100 perintah dasar linux100 perintah dasar linux
100 perintah dasar linux
 
Dasar dasar perintah linux dan sistem derektory pada linux ok
Dasar dasar perintah linux dan sistem derektory pada linux okDasar dasar perintah linux dan sistem derektory pada linux ok
Dasar dasar perintah linux dan sistem derektory pada linux ok
 
Lapres 6 1235010002
Lapres 6   1235010002Lapres 6   1235010002
Lapres 6 1235010002
 
My sql python_cherrypy
My sql python_cherrypyMy sql python_cherrypy
My sql python_cherrypy
 
DNS master slave
DNS master slaveDNS master slave
DNS master slave
 
Lapres 4 dan 5 1235010002
Lapres 4 dan 5   1235010002Lapres 4 dan 5   1235010002
Lapres 4 dan 5 1235010002
 
Konfigurasi file sharing
Konfigurasi file sharingKonfigurasi file sharing
Konfigurasi file sharing
 
Pembahasansoallks2013
Pembahasansoallks2013Pembahasansoallks2013
Pembahasansoallks2013
 
Proses dan Manajemen Proses di Linux
Proses dan Manajemen Proses di LinuxProses dan Manajemen Proses di Linux
Proses dan Manajemen Proses di Linux
 
Faujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so iiFaujiah kharie tugas 2 so ii
Faujiah kharie tugas 2 so ii
 
cara install ubuntu server
cara install ubuntu servercara install ubuntu server
cara install ubuntu server
 

Destacado

Новые технологические решения - презентация
Новые технологические решения - презентацияНовые технологические решения - презентация
Новые технологические решения - презентацияIldus Gimaev
 
Narrative theory
Narrative theoryNarrative theory
Narrative theory09evansash
 
Figure of speech.Edtech
Figure of speech.EdtechFigure of speech.Edtech
Figure of speech.EdtechRod Alano
 
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...Nkululeko Ngubane
 
Group 4 presentation
Group 4 presentationGroup 4 presentation
Group 4 presentationMez1987
 
2015 Kimberly Hall Resume
2015 Kimberly Hall Resume2015 Kimberly Hall Resume
2015 Kimberly Hall ResumeKimberly Hall
 
BookazineBits Thursday June 25 2015
BookazineBits Thursday June 25 2015BookazineBits Thursday June 25 2015
BookazineBits Thursday June 25 2015Rick Gallagher
 
EVALUACION DEL TERCER BLOQUE
EVALUACION DEL TERCER BLOQUEEVALUACION DEL TERCER BLOQUE
EVALUACION DEL TERCER BLOQUEdanny coronel
 
BookazineBits Thursday August 13 2015
BookazineBits Thursday August 13 2015BookazineBits Thursday August 13 2015
BookazineBits Thursday August 13 2015Rick Gallagher
 
Outhwaite-Aaron-MASc-PEAS-August-2015
Outhwaite-Aaron-MASc-PEAS-August-2015Outhwaite-Aaron-MASc-PEAS-August-2015
Outhwaite-Aaron-MASc-PEAS-August-2015Aaron Outhwaite
 
Loan deal presentation
Loan deal presentationLoan deal presentation
Loan deal presentation未来 原田
 
Dynamic Eagle Company Profile 2
Dynamic Eagle Company Profile 2Dynamic Eagle Company Profile 2
Dynamic Eagle Company Profile 2Nkululeko Ngubane
 
regular and irregular verbs
 regular and irregular verbs regular and irregular verbs
regular and irregular verbsAlejandra Castro
 

Destacado (14)

Новые технологические решения - презентация
Новые технологические решения - презентацияНовые технологические решения - презентация
Новые технологические решения - презентация
 
Narrative theory
Narrative theoryNarrative theory
Narrative theory
 
Figure of speech.Edtech
Figure of speech.EdtechFigure of speech.Edtech
Figure of speech.Edtech
 
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...
M4D Alumni Forum Empowered Women in Mining and Conference key speakers and pa...
 
Group 4 presentation
Group 4 presentationGroup 4 presentation
Group 4 presentation
 
2015 Kimberly Hall Resume
2015 Kimberly Hall Resume2015 Kimberly Hall Resume
2015 Kimberly Hall Resume
 
BookazineBits Thursday June 25 2015
BookazineBits Thursday June 25 2015BookazineBits Thursday June 25 2015
BookazineBits Thursday June 25 2015
 
Big data summary_v2.1
Big data summary_v2.1Big data summary_v2.1
Big data summary_v2.1
 
EVALUACION DEL TERCER BLOQUE
EVALUACION DEL TERCER BLOQUEEVALUACION DEL TERCER BLOQUE
EVALUACION DEL TERCER BLOQUE
 
BookazineBits Thursday August 13 2015
BookazineBits Thursday August 13 2015BookazineBits Thursday August 13 2015
BookazineBits Thursday August 13 2015
 
Outhwaite-Aaron-MASc-PEAS-August-2015
Outhwaite-Aaron-MASc-PEAS-August-2015Outhwaite-Aaron-MASc-PEAS-August-2015
Outhwaite-Aaron-MASc-PEAS-August-2015
 
Loan deal presentation
Loan deal presentationLoan deal presentation
Loan deal presentation
 
Dynamic Eagle Company Profile 2
Dynamic Eagle Company Profile 2Dynamic Eagle Company Profile 2
Dynamic Eagle Company Profile 2
 
regular and irregular verbs
 regular and irregular verbs regular and irregular verbs
regular and irregular verbs
 

Similar a Php curl

Automatic Backup via FTP - Part 2
Automatic Backup via FTP - Part 2Automatic Backup via FTP - Part 2
Automatic Backup via FTP - Part 2GLC Networks
 
Wawan tutorial-zend-bagian-1-3
Wawan tutorial-zend-bagian-1-3Wawan tutorial-zend-bagian-1-3
Wawan tutorial-zend-bagian-1-3Haswi Haswi
 
Cara Install Openbravo 2.50 MP 43 di Ubuntu
Cara Install Openbravo 2.50 MP 43 di UbuntuCara Install Openbravo 2.50 MP 43 di Ubuntu
Cara Install Openbravo 2.50 MP 43 di UbuntuWirabumi Software
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringMay OneNine
 
Tutorial Instalasi TKJ CLoud Server
Tutorial Instalasi TKJ CLoud ServerTutorial Instalasi TKJ CLoud Server
Tutorial Instalasi TKJ CLoud ServerKurniawan Suganda
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringRizal Permata
 
Modul File Transfer FTP
Modul File Transfer FTPModul File Transfer FTP
Modul File Transfer FTPHanief Ma'moen
 
Step by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasusStep by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasusfilar
 
Supriyanto squidproxyserver
Supriyanto squidproxyserverSupriyanto squidproxyserver
Supriyanto squidproxyserverHARRY CHAN PUTRA
 
Squidproxyserver
SquidproxyserverSquidproxyserver
Squidproxyserverpuput51
 
4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdf4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdfAyesMuharam
 
Tugas resume aplinet (edi,vani,risky)
Tugas resume aplinet (edi,vani,risky)Tugas resume aplinet (edi,vani,risky)
Tugas resume aplinet (edi,vani,risky)Koplak Koplakan
 
Laporan 6
Laporan 6Laporan 6
Laporan 6hudakds
 
World wide web
World wide webWorld wide web
World wide webpeces123
 

Similar a Php curl (20)

Nutch dan Solr
Nutch dan SolrNutch dan Solr
Nutch dan Solr
 
Automatic Backup via FTP - Part 2
Automatic Backup via FTP - Part 2Automatic Backup via FTP - Part 2
Automatic Backup via FTP - Part 2
 
HTTP Protokol
HTTP ProtokolHTTP Protokol
HTTP Protokol
 
Wawan tutorial-zend-bagian-1-3
Wawan tutorial-zend-bagian-1-3Wawan tutorial-zend-bagian-1-3
Wawan tutorial-zend-bagian-1-3
 
Cara Install Openbravo 2.50 MP 43 di Ubuntu
Cara Install Openbravo 2.50 MP 43 di UbuntuCara Install Openbravo 2.50 MP 43 di Ubuntu
Cara Install Openbravo 2.50 MP 43 di Ubuntu
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoring
 
FreeBSD web-based MUA
FreeBSD web-based MUAFreeBSD web-based MUA
FreeBSD web-based MUA
 
Tutorial Instalasi TKJ CLoud Server
Tutorial Instalasi TKJ CLoud ServerTutorial Instalasi TKJ CLoud Server
Tutorial Instalasi TKJ CLoud Server
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoring
 
Modul File Transfer FTP
Modul File Transfer FTPModul File Transfer FTP
Modul File Transfer FTP
 
Mandriva
MandrivaMandriva
Mandriva
 
Step by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasusStep by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasus
 
Supriyanto squidproxyserver
Supriyanto squidproxyserverSupriyanto squidproxyserver
Supriyanto squidproxyserver
 
Squidproxyserver
SquidproxyserverSquidproxyserver
Squidproxyserver
 
websecure.ppt
websecure.pptwebsecure.ppt
websecure.ppt
 
4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdf4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdf
 
Tugas resume aplinet (edi,vani,risky)
Tugas resume aplinet (edi,vani,risky)Tugas resume aplinet (edi,vani,risky)
Tugas resume aplinet (edi,vani,risky)
 
Laporan 6
Laporan 6Laporan 6
Laporan 6
 
World wide web
World wide webWorld wide web
World wide web
 
Jeni J2 Me Bab06 Jaringan
Jeni J2 Me Bab06 JaringanJeni J2 Me Bab06 Jaringan
Jeni J2 Me Bab06 Jaringan
 

Php curl

  • 1. Web Scraping with PHP/CURL Deddy Setyadi
  • 3. Seiring berkembangnya teknologi, fungsi pada php seperti file(), fopen(), fgets(), tidak mampu menangani form submission, authentication, redirection, dsb. Kemudian, dikembangkanlah sebuah library yang dinamakan cURL.
  • 4. cURL Library cURL library merupakan alat untuk melakukan transfer file dari webserver ke remote komputer. Library yang mendukung berbagai macam internet protokol ini mudah untuk dikonfigurasi, dan melayani berbagai macam interaksi antara client-server.
  • 5. libcurl (Library untuk curl) cURL Library curl (command line)
  • 6. PHP/CURL Modul yang ada pada PHP, sehingga PHP bisa menggunakan fungsi-fungsi yang telah disediakan cURL.
  • 8. Inisiasi Sesi PHP/CURL Sebelum menggunakan PHP/CURL, inisiasi dulu dengan curl_init(), atau curl_multi_init() jika URL lebih dari satu, yang kemudian disimpan dalam sebuah variabel.
  • 9. Pengaturan PHP/CURL Fungsi untuk mengkonfigurasi PHP/CURL adalah curl_setopt(), atau curl_setopt_array(), yang digunakan untuk mengutak-atik sesi cURL dengan berbagai opsi yang telah disediakan libcurl.
  • 10. Boolean value • CURLOPT_CONNECT_ONLY – Tidak ada data yang ditransfer • CURLOPT_FILETIME – Dapat mengetahui tanggal modifikasi dokumen • CURLOPT_HEADER – Header juga ikut ditransfer • CURLOPT_POST – Untuk melakukan method POST • CURLOPT_RETURNTRANSFER – Mengembalikan transfer sebagai string • CURLOPT_SSL_VERIFYPEER – Jika target memiliki enkripsi SSL & HTTPS • CURLOPT_FOLLOWLOCATION – Mengikuti redirect dari URL yang dituju.
  • 11. Integer value • CURLOPT_CONNECTTIMEOUT – Waktu tunggu saat menyambungkan ke URL. • CURLOPT_RESUME_FROM – untuk melanjutkan sebuah transfer. • CURLOPT_TIMEOUT – Batasan waktu untuk eksekusi cURL. • CURLOPT_MAXREDIRS – Batasan maksimal redirect yang diperbolehkan.
  • 12. String value • CURLOPT_URL – URL yang akan diambil • CURLOPT_USERAGENT – Konten “ User-Agent: ” header dalam HTTP request. • CURLOPT_POSTFIELDS – data untuk setiap field dalam method POST • CURLOPT_COOKIEJAR – File untuk menyimpan cookie saat sesi sudah ditutup. • CURLOPT_REFERER - Konten “ Referer: ” header dalam HTTP request.
  • 13. Eksekusi PHP/CURL Dengan menggunakan curl_exec(), maka PHP/CURL akan mengeksekusi seluruh opsi yang telah diatur dalam curl_setopt().
  • 14. Informasi dari Sesi PHP/CURL Setiap sebuah curl_exec() dipanggil, maka informasi pada saat sesi dieksekusi juga tersedia. Untuk mengetahui informasi tersebut, gunakan fungsi curl_getinfo().
  • 16. Menampilkan error dari Sesi PHP/CURL Untuk menampilkan error, maka dapat memanggil fungsi curl_error(). Fungsi ini akan menampilkan pesan error untuk operasi PHP/CURL yang terakhir kali dijalankan. Untuk lebih jelas mengenai pesan error yang dihasilkan cURL, bisa membuka http://curl.haxx.se/libcurl/c/libcurl- errors.html
  • 17. Menutup Sesi PHP/CURL Ketika sudah selesai menggunakan PHP/CURL, maka sesegera mungkin untuk menutup sesi cURL ini dengan memanggil fungsi curl_close().
  • 18. Demo
  • 19. Referensi • http://php.net/manual/en/ref.curl.php • http://etelej.github.io/how-to-use-php-curl-basics/ • http://www.slideshare.net/teenmaxinfo/curl-php-bookv32 • Schrenk, Michael. 2012. Webbots, spiders, and screen scrapers : a guide to developing internet agents with PHP/CURL. No Starch Press, Inc. Diakses 10 januari 2015, dari libgen.info. • Ward, Jacob. 2013. Instant PHP Web Scraping. Packt Publishing Ltd. Diakses 15 Januari 2015, dari libgen.info.
  • 20. Udah.