Thu thập dữ liệu web Python
Hãy tưởng tượng bạn phải lấy một lượng lớn dữ liệu từ các trang web và bạn muốn thực hiện việc đó càng nhanh càng tốt. Làm thế nào bạn sẽ làm điều đó mà không cần truy cập thủ công từng trang web và lấy dữ liệu? . Web Scraping chỉ làm cho công việc này dễ dàng hơn và nhanh hơn. Show
Khóa học đầy đủ về Python – Học Python trong 12 giờ. Hướng dẫn Python cho người mới bắt đầu. EdurekaKhóa học đầy đủ về Python của Edureka này giúp bạn trở thành bậc thầy về các khái niệm lập trình Python cơ bản và nâng cao Trong bài viết này về Tìm kiếm trên web bằng Python, bạn sẽ tìm hiểu tóm tắt về cách tìm kiếm trên web và xem cách trích xuất dữ liệu từ một trang web bằng bản minh họa. Tôi sẽ đề cập đến các chủ đề sau Tại sao Web Scraping được sử dụng?Quét web được sử dụng để thu thập thông tin lớn từ các trang web. Nhưng tại sao ai đó phải thu thập dữ liệu lớn như vậy từ các trang web?
Quét web là gì?Quét web là một phương pháp tự động được sử dụng để trích xuất một lượng lớn dữ liệu từ các trang web. Dữ liệu trên các trang web không có cấu trúc. Quét web giúp thu thập những dữ liệu phi cấu trúc này và lưu trữ ở dạng có cấu trúc. Có nhiều cách khác nhau để cạo các trang web như Dịch vụ trực tuyến, API hoặc viết mã của riêng bạn. Trong bài viết này, chúng ta sẽ xem cách triển khai quét web bằng python. Quét web có hợp pháp không?Nói về việc quét web có hợp pháp hay không, một số trang web cho phép quét web và một số thì không. Để biết một trang web có cho phép quét web hay không, bạn có thể xem “robot của trang web. txt” tập tin. Bạn có thể tìm thấy tệp này bằng cách nối thêm “/robots. txt” vào URL mà bạn muốn cạo. Ví dụ này, tôi đang cạo trang web Flipkart. Vì vậy, để xem “robot. txt”, URL là www. xe lật. com/robot. txt Nhận kiến thức chuyên sâu về Python cùng với các ứng dụng đa dạng của nó Biết thêm Tại sao Python tốt cho việc quét web?Dưới đây là danh sách các tính năng của Python giúp nó phù hợp hơn cho việc quét web
Tìm hiểu khóa đào tạo Python của chúng tôi tại các thành phố/quốc gia hàng đầu Làm thế nào để bạn cạo dữ liệu từ một trang web?Khi bạn chạy mã để quét web, một yêu cầu sẽ được gửi tới URL mà bạn đã đề cập. Để đáp ứng yêu cầu, máy chủ sẽ gửi dữ liệu và cho phép bạn đọc trang HTML hoặc XML. Sau đó, mã sẽ phân tích cú pháp trang HTML hoặc XML, tìm dữ liệu và trích xuất dữ liệu đó. Để trích xuất dữ liệu bằng cách quét web với python, bạn cần làm theo các bước cơ bản sau
Bây giờ chúng ta hãy xem cách trích xuất dữ liệu từ trang web Flipkart bằng Python Học Python, Deep Learning, NLP, Trí tuệ nhân tạo, Học máy với các khóa học AI và ML này, chương trình chứng chỉ PG Diploma của NIT Warangal Thư viện được sử dụng để quét webNhư chúng ta biết, Python có nhiều ứng dụng khác nhau và có các thư viện khác nhau cho các mục đích khác nhau. Trong phần trình diễn tiếp theo của chúng tôi, chúng tôi sẽ sử dụng các thư viện sau
Đăng ký kênh YouTube của chúng tôi để nhận thông tin cập nhật mớiVí dụ quét web. Cạo trang web Flipkartđiều kiện tiên quyết
Bắt đầu nào Bước 1. Tìm URL mà bạn muốn cạoTrong ví dụ này, chúng tôi sẽ cạo trang web Flipkart để trích xuất Giá, Tên và Xếp hạng của Máy tính xách tay. URL của trang này là https. //www. xe lật. com/laptops/~buyback-guarantee-on-laptops-/pr?sid=6bo%2Cb5g&uniqBStoreParam1=val1&wid=11. sản phẩmThẻ. PMU_V2 Bước 2. Kiểm tra trang Dữ liệu thường được lồng trong các thẻ. Vì vậy, chúng tôi kiểm tra trang để xem dữ liệu mà chúng tôi muốn thu thập được lồng trong thẻ nào. Để kiểm tra trang, chỉ cần nhấp chuột phải vào phần tử và nhấp vào “Kiểm tra” Khi bạn nhấp vào tab “Kiểm tra”, bạn sẽ thấy “Hộp kiểm tra trình duyệt” mở ra Bước 3. Tìm dữ liệu bạn muốn trích xuấtHãy trích xuất Giá, Tên và Xếp hạng tương ứng trong thẻ “div” Bước 4. Viết mãĐầu tiên, hãy tạo một tệp Python. Để thực hiện việc này, hãy mở thiết bị đầu cuối trong Ubuntu và nhập geditwith. phần mở rộng py Tôi sẽ đặt tên cho tệp của mình là “web-s”. Đây là lệnh gedit web-s.py Bây giờ, hãy viết mã của chúng tôi trong tệp này. Đầu tiên, chúng ta hãy nhập tất cả các thư viện cần thiết from selenium import webdriver from BeautifulSoup import BeautifulSoup import pandas as pd Để cấu hình webdriver sử dụng trình duyệt Chrome chúng ta phải đặt đường dẫn đến chromedriver driver = webdriver.Chrome("/usr/lib/chromium-browser/chromedriver") Tham khảo đoạn mã dưới đây để mở URL products=[] #List to store name of the product prices=[] #List to store price of the product ratings=[] #List to store rating of the product driver.get("https://www.flipkart.com/laptops/~buyback-guarantee-on-laptops-/pr?sid=6bo%2Cb5g&uniq") Bây giờ chúng tôi đã viết mã để mở URL, đã đến lúc trích xuất dữ liệu từ trang web. Như đã đề cập trước đó, dữ liệu chúng tôi muốn trích xuất được lồng vào thẻ. Vì vậy, tôi sẽ tìm các thẻ div có tên lớp tương ứng đó, trích xuất dữ liệu và lưu trữ dữ liệu trong một biến. Tham khảo mã dưới đây. content = driver.page_source soup = BeautifulSoup(content) for a in soup.findAll('a',href=True, attrs={'class':'_31qSD5'}): name=a.find('div', attrs={'class':'_3wU53n'}) price=a.find('div', attrs={'class':'_1vC4OE _2rQ-NK'}) rating=a.find('div', attrs={'class':'hGSR34 _2beYZw'}) products.append(name.text) prices.append(price.text) ratings.append(rating.text) Bước 5. Chạy mã và giải nén dữ liệuĐể chạy mã, sử dụng lệnh dưới đây python web-s.py Bước 6. Lưu trữ dữ liệu ở định dạng bắt buộcSau khi giải nén dữ liệu, bạn có thể muốn lưu trữ nó ở định dạng. Định dạng này thay đổi tùy thuộc vào yêu cầu của bạn. Đối với ví dụ này, chúng tôi sẽ lưu trữ dữ liệu được trích xuất ở định dạng CSV (Giá trị được phân tách bằng dấu phẩy). Để làm điều này, tôi sẽ thêm các dòng sau vào mã của mình df = pd.DataFrame({'Product Name':products,'Price':prices,'Rating':ratings}) df.to_csv('products.csv', index=False, encoding='utf-8') Bây giờ, tôi sẽ chạy lại toàn bộ mã Tên tệp “products. csv” được tạo và tệp này chứa dữ liệu được trích xuất Tôi hy vọng các bạn thích bài viết này về “Web Scraping với Python”. Tôi hy vọng blog này có nhiều thông tin và đã bổ sung giá trị cho kiến thức của bạn. Bây giờ hãy tiếp tục và thử Web Scraping. Thử nghiệm với các mô-đun và ứng dụng khác nhau của Python. Nếu bạn muốn biết về Web Scraping With Python trên nền tảng Windows, thì video dưới đây sẽ giúp bạn hiểu cách thực hiện hoặc bạn cũng có thể tham gia khóa học Python Master của chúng tôi Bạn có câu hỏi liên quan đến "dò web bằng Python"? . Diễn đàn và chúng tôi sẽ liên hệ lại với bạn sớm nhất hoặc bạn có thể tham gia Khóa đào tạo Python của chúng tôi tại Hobart ngay hôm nay Để có kiến thức chuyên sâu về ngôn ngữ Lập trình Python cùng với các ứng dụng khác nhau của nó, bạn có thể đăng ký tại đây để được đào tạo Python trực tuyến trực tiếp với sự hỗ trợ 24/7 và quyền truy cập trọn đời Thu thập thông tin và quét web bằng Python là gì?Thu thập dữ liệu web là một thành phần của quét web, logic của trình thu thập thông tin tìm các URL để được xử lý bởi mã trình quét . Trình thu thập dữ liệu web bắt đầu với một danh sách các URL để truy cập, được gọi là hạt giống. Đối với mỗi URL, trình thu thập thông tin sẽ tìm các liên kết trong HTML, lọc các liên kết đó dựa trên một số tiêu chí và thêm các liên kết mới vào hàng đợi.
Python có thể được sử dụng cho trình thu thập dữ liệu web không?Tạo trình thu thập dữ liệu web bằng Scrapy cho Python. Phát triển trình thu thập dữ liệu web với Scrapy, một khung mạnh mẽ để trích xuất, xử lý và lưu trữ dữ liệu web . Nếu bạn muốn có cái nhìn tổng quan về web scraping bằng Python, hãy tham gia khóa học DataCamp's Web Scraping with Python.
Làm cách nào để tạo trình thu thập dữ liệu web bằng Python?Quy trình làm việc cơ bản của trình thu thập dữ liệu web nói chung như sau. . Nhận URL ban đầu. . Trong khi thu thập dữ liệu trang web, chúng tôi cần tìm nạp nội dung HTML của trang, sau đó phân tích cú pháp để lấy URL của tất cả các trang được liên kết với trang này Đặt các URL này vào hàng đợi; Thu thập thông tin trang web có hợp pháp không?Vậy nó hợp pháp hay bất hợp pháp? . Rốt cuộc, bạn có thể cạo hoặc thu thập dữ liệu trang web của riêng mình mà không gặp trở ngại nào. Các công ty khởi nghiệp thích nó vì đây là một cách rẻ và hiệu quả để thu thập dữ liệu mà không cần quan hệ đối tác. Web scraping and crawling aren't illegal by themselves. After all, you could scrape or crawl your own website, without a hitch. Startups love it because it's a cheap and powerful way to gather data without the need for partnerships. |