Apa yang Bisa Dilakukan Tugas Terjadwal?
Ada begitu banyak otomatisasi yang dapat dicapai. Izinkan saya terlebih dahulu mencantumkan beberapa kasus penggunaan umum:
Pemantauan Dinamis Media Sosial: Melacak aktivitas pengguna tertentu secara teratur dan memantau topik yang sedang tren Akuisisi dan Analisis Data: Meng-crawl artikel situs web, informasi komentar, dll. secara teratur Pemasaran Otomatis: Secara otomatis memposting di media sosial pada interval yang terjadwal Otomatisasi Pribadi: Pengingat waktu dan manajemen tugas
Di masa lalu, mengimplementasikan tugas otomatis terjadwal ini cukup merepotkan. Seringkali membutuhkan penguasaan bahasa pemrograman (seperti Python), mengkonfigurasi server atau platform cloud, atau bahkan menulis skrip kompleks untuk menangani berbagai situasi. Ini cenderung menjadi hambatan signifikan bagi orang non-teknis atau pengembang dengan waktu terbatas.
Namun kini, dengan fitur "Tugas Terjadwal" Apidog, skenario otomatis ini pada dasarnya mudah ditangani.
Di Apidog, mengimplementasikan tugas waktu otomatis seperti crawler dan pemantauan secara kasar dapat dibagi menjadi langkah-langkah berikut:
- Mendapatkan API
- Analisis Data yang Dikembalikan
- Mengatur Skenario Pengujian
- Mengatur Tugas Terjadwal
Mari kita jelaskan di bawah ini bagaimana cara beroperasi di Apidog berdasarkan langkah-langkah ini. Apapun kebutuhan Anda, berikut ini dapat memberikan Anda beberapa inspirasi.
Mendapatkan API
Jika Anda ingin memantau dinamika media sosial platform tertentu, atau meng-crawl data dari platform tertentu, langkah pertama adalah mendapatkan API yang mengimplementasikan operasi ini. Jadi muncul pertanyaan, di mana saya bisa menemukan API ini?
Anda dapat membuka "platform terbuka" resmi untuk mencari tahu apakah ada antarmuka terbuka yang relevan. Ini adalah cara yang paling formal. Umumnya, halaman yang dapat ditampilkan di bagian depan akan memiliki API yang sesuai yang disediakan.
Misalnya, jika kita ingin memantau jumlah bintang dari proyek tertentu di GitHub, kita dapat membuka platform terbuka GitHub saat ini untuk melihat apakah ada API yang relevan yang disediakan. Jika ada, cukup salin langsung.

Token diperlukan saat meminta API terbuka, dan umumnya dapat dibuat di latar belakang pengembang.

Selain membuka platform resmi untuk mencari API, Anda juga dapat memilih untuk menangkap paket di browser, atau menemukan beberapa proyek sumber terbuka di GitHub. Metode operasi spesifik dapat dilihat di bagian ekstensi di akhir artikel ini.
Analisis Data yang Dikembalikan
Setelah kita tahu cara mendapatkan API yang relevan, langkah selanjutnya adalah menganalisis data yang dikembalikan dan melihat informasi berguna apa yang ada di dalamnya. Umumnya, API ini mengembalikan data dalam format JSON, dan kita perlu melihat dengan cermat apa arti setiap bidang.
Misalnya, mengakses API terbuka di bawah ini dapat memperoleh informasi gudang untuk proyek sumber terbuka tertentu di GitHub:
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/{owner}/{repo}
Di mana {owner} adalah nama pengguna atau nama organisasi pemilik repositori dan {repo} adalah nama repositori. Untuk menemukan informasi ini, cukup lihat URL repositori GitHub:
- Buka halaman proyek GitHub yang ingin Anda lihat
- Lihat URL di bilah alamat browser, dan formatnya adalah:
https://github.com/{owner}/{repo} - Bagian setelah garis miring pertama di URL adalah
{owner}, bagian setelah garis miring kedua adalah{repo}

Di Apidog, Anda dapat langsung menyalin konten perintah cURL di atas untuk membuat permintaan API baru, atau Anda dapat secara manual mengatur metode permintaan dan URL sambil menambahkan Token ke header permintaan.

Setelah Anda mengirim permintaan, Anda akan mendapatkan respons JSON seperti ini:
{
"id": 468576060,
"name": "openai-cookbook",
"full_name": "openai/openai-cookbook",
"stargazers_count": 59366,
...
}
Setelah mendapatkan data JSON mentah, langkah selanjutnya adalah pemrosesan data. Di Apidog, kita dapat menggunakan ekspresi JSONPath atau menulis skrip sederhana untuk mencapainya.
Misalnya, untuk menggunakan JSONPath untuk mengekstrak bidang tertentu, Anda dapat menambahkan operasi "Ekstrak Variabel" di "Post-processor" dan mengisi ekspresi yang sesuai. Jika Anda tidak terbiasa dengan cara menulis ekspresi, Anda dapat mengklik ikon di kotak input "Ekspresi JSONPath" untuk menggunakan alat ekstraksi JSONPath sebagai asisten.

Data yang diekstrak akan disimpan sementara dalam variabel lingkungan, yang dapat dikirim ke server atau disimpan dalam database pada langkah-langkah selanjutnya.
Selain format JSON umum, ada jenis lain yang langsung mengembalikan seluruh dokumen HTML, yang sangat umum dalam skenario rendering sisi server. Untuk ini, kita perlu menggunakan skrip untuk pemrosesan.
Di Apidog, Anda dapat membuat "Skrip Kustom" baru di "Post-processor" dan menggunakan metode fox.liveRequire untuk mereferensikan pustaka htmlparser2 untuk memproses data format HTML.
Misalnya, jika Anda ingin mengekstrak semua <article> tag dan konten internalnya dari HTML dan mengkonversinya ke format teks, Anda dapat menulis skrip seperti ini:
fox.liveRequire("htmlparser2", (htmlparser2) => {
console.log(htmlparser2);
// String HTML (umumnya dibaca dari data pengembalian antarmuka)
const htmlString = `
<html>
<body>
<article>
<h1>Judul</h1>
<p>Ini adalah paragraf.</p>
<p>Bagian teks lain.</p>
</article>
<footer>Konten footer</footer>
</body>
</html>
`;
// Mengurai dokumen
const document = htmlparser2.parseDocument(htmlString);
// Menggunakan DomUtils untuk menemukan tag <article>
const article = htmlparser2.DomUtils.findOne(elem => elem.name === "article", document.children);
// Mengkonversi konten dalam <article> menjadi fragmen HTML lengkap
if (article) {
const articleHTML = htmlparser2.DomUtils.getOuterHTML(article);
console.log(articleHTML);
} else {
console.log("Tidak ada tag <article> ditemukan.");
}
})

Memproses konten format HTML melalui skrip tidak akan terlalu banyak dijelajahi di sini. Anda dapat memahaminya sebagai "manipulasi DOM" - Anda dapat bertanya kepada AI untuk detail spesifik.
Mengatur Skenario Pengujian
Dengan API yang siap dan data yang dianalisis, langkah selanjutnya adalah mengatur skenario pengujian dalam pengujian otomatis.
Di Apidog, Anda dapat membuat skenario pengujian dalam pengujian otomatis dan mengimpor permintaan API yang telah disiapkan ke dalamnya.

Jika Anda perlu menyisipkan data yang diproses ke dalam database, Anda dapat membuat "Operasi Database" baru di "Post-processor" dan menyisipkan data yang diproses ke dalam database melalui perintah SQL. Perintah SQL mendukung pembacaan nilai dari variabel lingkungan, misalnya:

INSERT INTO monitoring_data (project_name, star_count, updated_time)
VALUES ('{{project_name}}', {{star_count}}, NOW())
Selain itu, Anda dapat menyimpan data yang diproses melalui API - yaitu, menulis API Anda sendiri untuk menyimpan data ke server, atau mengirim data ke platform pihak ketiga melalui Webhook.
Misalnya, jika saya ingin mengirim data yang diproses ke Feishu (Lark), saya dapat menambahkan langkah pengujian baru dalam skenario pengujian dan menggunakan API Webhook yang disediakan oleh Feishu untuk mengirim pesan. Selama proses ini, Anda dapat membaca hasil eksekusi langkah-langkah sebelumnya melalui "Nilai Dinamis", membuat pemrosesan data lebih nyaman.

Jika Anda perlu mengulang sekelompok data, atau membiarkan bidang yang dikembalikan memenuhi kondisi spesifik tertentu sebelum melanjutkan eksekusi, Anda juga dapat menambahkan "Kondisi Kontrol Aliran" ke langkah-langkah pengujian.

Setelah orkestrasi skenario pengujian selesai, Anda dapat menjalankan pengujian untuk melihat hasilnya. Periksa apakah ada kesalahan di seluruh skenario pengujian dan konfirmasikan apakah data berhasil dikirim kembali. Jika tidak ada masalah dengan skenario pengujian yang diorkestrasi, Anda dapat melanjutkan ke langkah berikutnya - menyiapkan tugas terjadwal!
Mengatur Tugas Terjadwal
Di Apidog, mengatur tugas terjadwal sangat sederhana. Namun, prasyarat untuk menggunakan tugas terjadwal adalah Anda telah menyebarkan Runner di server. Anda dapat merujuk ke panduan terperinci tentang proses instalasi dan konfigurasi Runner.Dengan asumsi Anda telah menyebarkan Runner, Anda sekarang dapat menambahkan tugas terjadwal ke skenario pengujian yang telah diorkestrasi sebelumnya untuk membuatnya dieksekusi sesuai jadwal, mencapai pemantauan otomatis.
Dalam pengujian otomatis Apidog, temukan modul "Tugas Terjadwal", lalu buat tugas terjadwal baru. Di antarmuka konfigurasi, Anda akan melihat opsi-opsi berikut:
- Nama Tugas: Beri tugas nama deskriptif, seperti "Pemantauan Jumlah Bintang GitHub Harian"
- Skenario Pengujian: Pilih skenario pengujian yang perlu dijalankan secara teratur, seperti pemantauan terjadwal atau skenario pengujian crawler
- Atur Siklus Eksekusi: Misalnya, jalankan sekali setiap hari pada pukul 18:00
- Lingkungan Eksekusi: Pilih layanan Runner yang telah disebarkan
- Pengaturan Notifikasi: Tentukan metode notifikasi setelah tugas selesai, yang bisa berupa email, DingTalk, dll.

Setelah diatur dan disimpan, skenario pengujian di bawah tugas terjadwal ini akan berjalan secara teratur sesuai dengan siklus eksekusi yang ditetapkan, dan kita telah mencapai tujuan pemantauan terjadwal otomatis.

Ekstensi
Pada bagian "Mendapatkan API" di atas, selain menemukan API di platform terbuka resmi, Anda juga dapat langsung menangkap paket di browser.
Berikut adalah contoh:
Misalkan kita ingin memantau topik tren Weibo. Kita bisa membuka halaman tren Weibo di browser, lalu tekan F12 atau Ctrl + Shift + I untuk membuka alat pengembang, dan beralih ke tab Jaringan. Segarkan halaman, dan Anda akan melihat banyak permintaan. Temukan permintaan yang mendapatkan data tren, klik kanan dan salin sebagai cURL. Kemudian, buka Apidog, buat antarmuka baru, dan tempel cURL yang baru saja Anda salin ke dalam kotak input. Apidog akan secara otomatis menguraikannya untuk kita - sangat nyaman!

Selain penangkapan paket, beberapa pengembang pihak ketiga mungkin telah merekayasa balik API layanan tertentu. Anda dapat mencari di GitHub dan menggunakannya secara langsung jika diperlukan.
Kesimpulan
Ini mengakhiri isi artikel ini. Saya harap ini dapat memberi Anda inspirasi untuk menggunakan fitur tugas terjadwal Apidog untuk mengimplementasikan beberapa operasi otomatis yang menarik. Jika Anda memiliki ide atau praktik keren, jangan ragu untuk membagikannya di komunitas pengguna Apidog. Baik itu tips penggunaan pribadi atau ide untuk memecahkan masalah sulit - semuanya diterima!
