Rumah pembangunan bahagian belakang tutorial php Rangka imej dari tapak web dan muat turun secara automatik secara setempat

Rangka imej dari tapak web dan muat turun secara automatik secara setempat

Jun 13, 2023 pm 01:28 PM
automasi reptilia Muat turun imej

Dalam era Internet, orang ramai telah terbiasa memuat turun gambar dari pelbagai laman web seperti galeri dan platform sosial. Jika anda hanya perlu memuat turun sebilangan kecil imej, operasi manual tidak menyusahkan. Walau bagaimanapun, jika sejumlah besar gambar perlu dimuat turun, operasi manual akan menjadi sangat memakan masa dan susah payah Pada masa ini, teknologi automasi perlu digunakan untuk merealisasikan muat turun gambar secara automatik.

Artikel ini akan memperkenalkan cara menggunakan teknologi perangkak Python untuk memuat turun imej secara automatik dari tapak web ke komputer tempatan. Proses ini dibahagikan kepada dua langkah: langkah pertama ialah menggunakan pustaka permintaan Python atau perpustakaan selenium untuk merebut pautan imej di tapak web langkah kedua ialah memuat turun imej ke tempatan melalui urllib Python atau perpustakaan permintaan mengikut yang diperolehi; pautan.

Langkah pertama: Dapatkan pautan imej

  1. Gunakan perpustakaan permintaan untuk merangkak pautan

Mari kita lihat dahulu cara menggunakan perpustakaan permintaan untuk merangkak pautan imej. Kod sampel adalah seperti berikut:

import requests
from bs4 import BeautifulSoup

url = 'http://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')

img_tags = soup.find_all('img')

urls = [img['src'] for img in img_tags]
Salin selepas log masuk

Mengambil tapak web Contoh sebagai contoh, mula-mula gunakan perpustakaan permintaan untuk merangkak kandungan web dan gunakan perpustakaan BeautifulSoup untuk menghuraikan HTML. Kemudian, kami menggunakan kaedah soup.find_all('img') untuk mendapatkan semua teg img dalam HTML dan menggunakan pemahaman senarai untuk mengekstrak nilai atribut src dalam setiap teg.

  1. Gunakan pustaka selenium untuk merangkak pautan

Cara lain untuk mendapatkan pautan imej adalah dengan menggunakan pustaka selenium adalah seperti berikut:

rreee

Di sini kami ChromeDriver digunakan Apabila menggunakannya, anda perlu mengisi laluan ChromeDriver pada komputer anda ke dalam 'path/to/chromedriver' dalam kod sampel. Baris kedua kod membolehkan penyemak imbas tanpa kepala, yang mengelakkan operasi dalam tetingkap penyemak imbas Chrome dan meningkatkan kelajuan. Kemudian kami menggunakan modul pemacu web dalam perpustakaan selenium untuk membuat contoh penyemak imbas Chrome dan membuka tapak web Contoh dengan menetapkan driver.get(url). Kemudian gunakan driver.find_elements_by_tag_name('img') untuk mendapatkan semua teg img, dan kemudian dapatkan nilai atribut src dalam setiap teg.

Langkah 2: Muat turun imej

Terdapat banyak cara untuk memuat turun imej Di sini kami menggunakan perpustakaan urllib Python sendiri atau meminta perpustakaan untuk dimuat turun. Kod sampel adalah seperti berikut:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from time import sleep

url = 'http://example.com'

options = Options()
options.add_argument('--headless')

service = Service('/path/to/chromedriver')
driver = webdriver.Chrome(service=service, options=options)
driver.get(url)

sleep(2)

img_tags = driver.find_elements_by_tag_name('img')

urls = [img.get_attribute('src') for img in img_tags]
Salin selepas log masuk

Di sini, pustaka urllib.request digunakan untuk memuat turun imej dari rangkaian ke tempatan, gunakan url.split('/')[-1] untuk mendapatkan nama fail imej dan menetapkannya kepada nama fail berubah, dan akhirnya gunakan urllib.request.urlretrieve(url, filename) Muat turun imej secara setempat. Perlu diingatkan bahawa jika url mengandungi bahasa Cina, url tersebut juga perlu dikodkan.

Di sini kami memperkenalkan secara ringkas cara menggunakan perpustakaan permintaan untuk memuat turun imej Kod sampel adalah seperti berikut:

import urllib.request

for url in urls:
    filename = url.split('/')[-1]
    urllib.request.urlretrieve(url, filename)
Salin selepas log masuk

Di sini kami menggunakan perpustakaan permintaan untuk mendapatkan fail binari imej dan menulisnya ke. fail itu. Perlu diingatkan bahawa memandangkan mod penulisan fail binari ialah 'wb', anda perlu menggunakan kaedah with open(filename, 'wb') as f: untuk membuka fail dan menulis untuk memastikan setiap fail ditutup dengan betul.

Ringkasan

Ringkasnya, melalui teknologi perangkak Python, kami boleh merangkak imej dengan mudah di tapak web dan memuat turunnya secara setempat secara automatik. Teknologi automasi ini boleh membantu kami meningkatkan kecekapan kerja dan sangat membantu untuk kerja yang memerlukan pemprosesan sejumlah besar imej. Pada masa yang sama, kita perlu diingatkan bahawa imej merangkak dari tapak web perlu mematuhi undang-undang dan peraturan yang berkaitan dan menghormati hak cipta tapak web tersebut. Jika anda tidak mempunyai kebenaran rasmi atau kebenaran daripada tapak web, jangan merangkak imej di tapak web tanpa kebenaran.

Atas ialah kandungan terperinci Rangka imej dari tapak web dan muat turun secara automatik secara setempat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Berapa lama masa yang diambil untuk mempelajari crawler python Berapa lama masa yang diambil untuk mempelajari crawler python Oct 25, 2023 am 09:44 AM

Masa yang diperlukan untuk mempelajari crawler Python berbeza dari orang ke orang dan bergantung pada faktor seperti keupayaan pembelajaran peribadi, kaedah pembelajaran, masa pembelajaran dan pengalaman. Mempelajari crawler Python bukan sekadar mempelajari teknologi itu sendiri, tetapi juga memerlukan kemahiran mengumpul maklumat yang baik, kemahiran menyelesaikan masalah dan kemahiran kerja berpasukan. Melalui pembelajaran dan latihan berterusan, anda akan berkembang secara beransur-ansur menjadi pembangun perangkak Python yang cemerlang.

Fahami perbezaan dan perbandingan antara SpringBoot dan SpringMVC Fahami perbezaan dan perbandingan antara SpringBoot dan SpringMVC Dec 29, 2023 am 09:20 AM

Bandingkan SpringBoot dan SpringMVC dan fahami perbezaannya Dengan pembangunan Java yang berterusan, rangka kerja Spring telah menjadi pilihan pertama bagi banyak pembangun dan perusahaan. Dalam ekosistem Spring, SpringBoot dan SpringMVC ialah dua komponen yang sangat penting. Walaupun kedua-duanya adalah berdasarkan rangka kerja Spring, terdapat beberapa perbezaan dalam fungsi dan penggunaan. Artikel ini akan menumpukan pada membandingkan SpringBoot dan Spring

Jenkins dalam PHP Integrasi Berterusan: Sarjana Automasi Binaan dan Penerapan Jenkins dalam PHP Integrasi Berterusan: Sarjana Automasi Binaan dan Penerapan Feb 19, 2024 pm 06:51 PM

Dalam pembangunan perisian moden, integrasi berterusan (CI) telah menjadi amalan penting untuk meningkatkan kualiti kod dan kecekapan pembangunan. Antaranya, Jenkins ialah alat CI sumber terbuka yang matang dan berkuasa, terutamanya sesuai untuk aplikasi PHP. Kandungan berikut akan menyelidiki cara menggunakan Jenkins untuk melaksanakan penyepaduan berterusan PHP, dan menyediakan kod sampel khusus dan langkah terperinci. Pemasangan dan konfigurasi Jenkins Pertama, Jenkins perlu dipasang pada pelayan. Hanya muat turun dan pasang versi terkini dari laman web rasminya. Selepas pemasangan selesai, beberapa konfigurasi asas diperlukan, termasuk menyediakan akaun pentadbir, pemasangan pemalam dan konfigurasi kerja. Cipta kerja baharu Pada papan pemuka Jenkins, klik butang "Kerja Baharu". Pilih "Bebaskan

Bagaimana untuk memadam automasi arahan pintasan Apple Bagaimana untuk memadam automasi arahan pintasan Apple Feb 20, 2024 pm 10:36 PM

Cara Memadam Automasi Pintasan Apple Dengan pelancaran sistem iOS13 baharu Apple, pengguna boleh menggunakan pintasan (Pintasan Apple) untuk menyesuaikan dan mengautomasikan pelbagai operasi telefon mudah alih, yang sangat meningkatkan pengalaman telefon mudah alih pengguna. Walau bagaimanapun, kadangkala kita mungkin perlu memadamkan beberapa pintasan yang tidak diperlukan lagi. Jadi, bagaimana untuk memadamkan automasi arahan pintasan Apple? Kaedah 1: Padam melalui apl Pintasan Pada iPhone atau iPad anda, buka apl "Pintasan". Pilih dalam bar navigasi bawah

Amalan perangkak Java yang cekap: perkongsian teknik rangkak data web Amalan perangkak Java yang cekap: perkongsian teknik rangkak data web Jan 09, 2024 pm 12:29 PM

Amalan perangkak Java: Cara merangkak data halaman web dengan cekap Pengenalan: Dengan perkembangan pesat Internet, sejumlah besar data berharga disimpan dalam pelbagai halaman web. Untuk mendapatkan data ini, selalunya perlu untuk mengakses setiap halaman web secara manual dan mengekstrak maklumat satu demi satu, yang sudah pasti tugas yang membosankan dan memakan masa. Untuk menyelesaikan masalah ini, orang ramai telah membangunkan pelbagai alat crawler, antaranya Java crawler adalah salah satu yang paling biasa digunakan. Artikel ini akan membawa pembaca memahami cara menggunakan Java untuk menulis perangkak web yang cekap dan menunjukkan amalan melalui contoh kod tertentu. 1. Pangkal reptilia

Gunakan skrip Python untuk melaksanakan penjadualan tugas dan automasi di bawah platform Linux Gunakan skrip Python untuk melaksanakan penjadualan tugas dan automasi di bawah platform Linux Oct 05, 2023 am 10:51 AM

Menggunakan skrip Python untuk melaksanakan penjadualan tugas dan automasi di bawah platform Linux Dalam persekitaran teknologi maklumat moden, penjadualan tugas dan automasi telah menjadi alat penting untuk kebanyakan perusahaan. Sebagai bahasa pengaturcaraan yang ringkas, mudah dipelajari dan kaya dengan ciri, Python sangat mudah dan cekap untuk melaksanakan penjadualan tugas dan automasi pada platform Linux. Python menyediakan pelbagai perpustakaan untuk penjadualan tugas, yang paling biasa digunakan dan berkuasa ialah crontab. crontab ialah sistem pengurusan dan penjadualan

Bagaimana Robotik dan Kepintaran Buatan Boleh Mengautomasikan Rantaian Bekalan Bagaimana Robotik dan Kepintaran Buatan Boleh Mengautomasikan Rantaian Bekalan Feb 05, 2024 pm 04:40 PM

Teknologi automasi sedang digunakan secara meluas dalam industri yang berbeza, terutamanya dalam bidang rantaian bekalan. Hari ini, ia telah menjadi bahagian penting dalam perisian pengurusan rantaian bekalan. Pada masa hadapan, dengan perkembangan lanjut teknologi automasi, keseluruhan rantaian bekalan dan perisian pengurusan rantaian bekalan akan mengalami perubahan besar. Ini akan membawa kepada pengurusan logistik dan inventori yang lebih cekap, meningkatkan kelajuan dan kualiti pengeluaran dan penghantaran, dan seterusnya menggalakkan pembangunan dan daya saing perusahaan. Pemain rantaian bekalan yang berfikiran ke hadapan bersedia untuk menangani situasi baharu. CIO harus memimpin dalam memastikan hasil terbaik untuk organisasi mereka, dan memahami peranan robotik, kecerdasan buatan dan automasi dalam rantaian bekalan adalah penting. Apakah automasi rantaian bekalan? Automasi rantaian bekalan merujuk kepada penggunaan cara teknologi untuk mengurangkan atau menghapuskan penyertaan manusia dalam aktiviti rantaian bekalan. ia meliputi pelbagai

Bagaimana untuk mengautomasikan operasi skrip pada Linux menggunakan Java Bagaimana untuk mengautomasikan operasi skrip pada Linux menggunakan Java Oct 05, 2023 pm 12:09 PM

Cara menggunakan Java untuk menulis skrip untuk mengautomasikan operasi pada Linux Dalam sistem Linux, kita boleh menggunakan Java untuk menulis skrip untuk mengautomasikan operasi. Java ialah bahasa pengaturcaraan merentas platform dengan ciri berorientasikan objek yang berkuasa dan sokongan perpustakaan kelas kaya. Dalam artikel ini, kita akan belajar cara menggunakan Java untuk menulis skrip untuk mengautomasikan operasi pada Linux, dan memberikan contoh kod khusus. Pertama, kita perlu memasang Java Development Kit (JDK) pada Linux. saya

See all articles