برای خواندن صفحات HTML در پایتون می توان از کتابخانه قدرتمند BeautifulSoup استفاده کرد. این کتابخانه به شما اجازه می دهد به راحتی در میان تگ های HTML جستجو کنید و اطلاعات مورد نظر خود مانند عنوان صفحه یا فهرست تیترهای موجود در آن را استخراج کنید.
نصب BeautifulSoup
برای نصب این کتابخانه و بسته های وابسته آن، می توانید از مدیر بسته Anaconda استفاده کنید:
1 |
conda install Beaustifulsoap |
خواندن فایل HTML در پایتون
در مثال زیر، ابتدا یک درخواست به یک آدرس اینترنتی (URL) ارسال می کنیم تا محتوای آن در محیط پایتون بارگذاری شود. سپس با استفاده از پارامتر html.parser
کل فایل HTML را تجزیه می کنیم و در نهایت چند خط ابتدایی از آن را چاپ می کنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import urllib2 from bs4 import BeautifulSoup # Fetch the html file response = urllib2.urlopen('http://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() # Parse the html file soup = BeautifulSoup(html_doc, 'html.parser') # Format the parsed html file strhtm = soup.prettify() # Print the first few characters print (strhtm[:225]) |
اجرای کد بالا نتیجه ای مشابه زیر ایجاد می کند:
1 2 3 4 5 6 7 8 9 10 |
<!DOCTYPE html> <!--[if IE 8]><html class="ie ie8"> <![endif]--> <!--[if IE 9]><html class="ie ie9"> <![endif]--> <!--[if gt IE 9]><!--> <html> <!--<![endif]--> <head> <!-- Basic --> <meta charset="utf-8"/> <title> |
استخراج مقدار یک تگ
برای استخراج مقدار یک تگ از اولین نمونه موجود در HTML، می توان از کد زیر استفاده کرد:
1 2 3 4 5 6 7 8 9 10 11 12 |
import urllib2 from bs4 import BeautifulSoup response = urllib2.urlopen('http://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() soup = BeautifulSoup(html_doc, 'html.parser') print (soup.title) print(soup.title.string) print(soup.a.string) print(soup.b.string) |
اجرای کد بالا خروجی زیر را ایجاد می کند:
1 2 3 |
Python Overview None Python is Interpreted |
استخراج تمام نمونه های یک تگ
برای استخراج مقدار تمام نمونه های یک تگ، می توان از کد زیر استفاده کرد:
1 2 3 4 5 6 7 8 |
import urllib2 from bs4 import BeautifulSoup response = urllib2.urlopen('http://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() soup = BeautifulSoup(html_doc, 'html.parser') for x in soup.find_all('b'): print(x.string) |
خروجی اجرای این کد به شکل زیر خواهد بود:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Python is Interpreted Python is Interactive Python is Object-Oriented Python is a Beginner's Language Easy-to-learn Easy-to-read Easy-to-maintain A broad standard library Interactive Mode Portable Extendable Databases GUI Programming Scalable |
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- انتشار: ۱۹ مرداد ۱۴۰۴
دسته بندی موضوعات
- آموزش ارز دیجیتال
- آموزش برنامه نویسی
- آموزش متنی برنامه نویسی
- اطلاعیه و سایر مطالب
- پروژه برنامه نویسی
- دوره های تخصصی برنامه نویسی
- رپورتاژ
- فیلم های آموزشی
- ++C
- ADO.NET
- Adobe Flash
- Ajax
- AngularJS
- apache
- ARM
- Asp.Net
- ASP.NET MVC
- AVR
- Bootstrap
- CCNA
- CCNP
- CMD
- CSS
- Dreameaver
- EntityFramework
- HTML
- IOS
- jquery
- Linq
- Mysql
- Oracle
- PHP
- PHPMyAdmin
- Rational Rose
- silver light
- SQL Server
- Stimulsoft Reports
- Telerik
- UML
- VB.NET&VB6
- WPF
- Xml
- آموزش های پروژه محور
- اتوکد
- الگوریتم تقریبی
- امنیت
- اندروید
- اندروید استودیو
- بک ترک
- بیسیک فور اندروید
- پایتون
- جاوا
- جاوا اسکریپت
- جوملا
- دلفی
- دوره آموزش Go
- دوره های رایگان پیشنهادی
- زامارین
- سئو
- ساخت CMS
- سی شارپ
- شبکه و مجازی سازی
- طراحی الگوریتم
- طراحی بازی
- طراحی وب
- فتوشاپ
- فریم ورک codeigniter
- فلاتر
- کانستراکت
- کریستال ریپورت
- لاراول
- معماری کامپیوتر
- مهندسی اینترنت
- هوش مصنوعی
- یونیتی
- کتاب های آموزشی
- Android
- ASP.NET
- AVR
- LINQ
- php
- Workflow
- اچ تی ام ال
- بانک اطلاعاتی
- برنامه نویسی سوکت
- برنامه نویسی موبایل
- پاسکال
- پایان نامه
- پایتون
- جاوا
- جاوا اسکریپت
- جی کوئری
- داده کاوی
- دلفی
- رباتیک
- سئو
- سایر کتاب ها
- سخت افزار
- سی اس اس
- سی پلاس پلاس
- سی شارپ
- طراحی الگوریتم
- فتوشاپ
- مقاله
- مهندسی نرم افزار
- هک و امنیت
- هوش مصنوعی
- ویژوال بیسیک
- نرم افزار و ابزار برنامه نویسی
- وردپرس