Chính xác rồi đó.
Download Manga Bằng Python (Final Update 12/08/2017 - Package)
cái thư viện beatyfull soup này cực bá đạo luôn nhưng mình thấy quan trọng là mò trong source code của trang html để tìm cái đoạn script đó đau mắt phết đấu có kinh nghiệm gì chia sẻ cái nhể
https://kipalog.com/posts/Vui---Voc-Python-voi-Requests-and-Beautiful-Soup-package
đấy bài này có hướng dẫn cách làm chi tiết này bác này .Nhưng em làm món này rồi thấy làm trên win nó cứ lỗi hoài mà sang ubuntu thì được ngay vì dung bên win em
import urllib2
kiểu gì cũng lỗi mà kể cả powershell hay cmd lỗi hết
Nên trừu tượng hoá, chia nhỏ module. code này nhìn muốn oẹ quá
Hi Nguyễn Thành Trung.
Ý mình nói là khả năng mở rộng. Bây giờ khi có nhu cầu tải trên một trang mới hoặc bỏ một trang đi thì bạn làm thể nào ? Cũng như cho nhiều người đóng góp thì như nào ?
1, Với cách làm module. Bạn thêm một trang mới thì chỉ cần tạo thêm 1 file module với có 2 hàm chính còn lại code các file khác giữ nguyên.
2. Khi bỏ một trang thì chỉ cần đổi tên file hoặc xóa đi.
3. Nhiều người đóng góp thì chỉ cần tải file module của mình lên là được không cần sửa code của bạn, giống như các addon chia sẻ cũng dễ.
Mình chưa có kinh nghiệm làm lắm. Mình cũng đang refactor lại đây . Cám ơn góp ý của bạn
Mình đang làm bằng cách mỗi web sẽ có mỗi module nhận nhiệm vụ.
thế này thì làm sao thi đại học điểm cao được đây bạn
Hi Nguyễn Thành Trung.
Kiếm thêm ai code phần view nữa là hoàn thành phần mêm đọc truyện offline rồi. @@!
Up luôn lên github để ai thích có thể dùng luôn. @@!
Cậu học Python có lâu không để viết được cái này?
Và ngoài Python ra thì cậu còn kiến thức gì nữa thế?
Cũng biết sơ sơ cú pháp . Mò một chút docs trên mạng. Biết thêm tí HTML
Biết cài lib, cấu trúc rẽ nhánh, hàm, vòng lặp… HTML
Đọc thêm cuốn này là làm đc
https://www.amazon.com/Web-Scraping-Python-Collecting-Modern/dp/1491910291/ref=sr_1_1?ie=UTF8&qid=1501686319&sr=8-1&keywords=web+scraping+with+python
không cần đấu bác theo kinh nghiệm của mình thì chỉ cần biết python cơ bản và đọc doc về thư viện bs4-BeautifulSoup là làm được rồi bác à .Quan trọng nhất là bác có đủ kiên nhẫn để mò cái đoạn script đó ko
Quyển này có đầy đủ trick mánh để crawl chứ ko đơn thuần là chỉ sử dụng bs4-BeautifulSoup, nhất là mấy chương cuối
Có vài góp ý như sau:
- Bạn nên có file .gitignore và ignore các file *.pyc và pycache
- Nên làm thành package có thể install bằng pip. https://python-packaging.readthedocs.io/en/latest/
- Phần CLI nên dùng argparse
- Tên function không dùng camelCase, mà dùng underscore hoặc viết liền. Còn class thì viết hoa các chữ cái đầu tiên.
- Dùng logging thay cho print
- Các function cần có docstring
- Nên có test
Dù sao code base đã có rồi, nên nếu cố gắng 1 chút nữa là có thể làm thành package. Chúc bạn có một lib có thể viral.
Đồng ý tất cả trừ vụ package.
Phần đó chỉ khi nào app hoàn thành, release cho khách hàng xong. Buổi họp team tổng kết cuối cùng mới quyết định phần nào có thể reuse cho dự án kế tiếp, sau đó mới refactor lại thành package.
Class name nên dùng CamelCase chứ nhỉ?
Cái này chắc tùy style của mỗi người: snake_case m chỉ dùng khi tên biến/ hàm là tiếng việt.
Hi Nguyễn Thành Trung.
Theo mình nên dùng import động kiểu này. Từ tên miền link tự xác định file module cần dùng sẽ không cần sửa lại main mỗi khi thêm mới module.
https://stackoverflow.com/questions/37808866/proper-way-to-dynamically-import-a-module-with-relative-imports
Mình có một số nhận xét và góp ý thế này:
- Ý tưởng hay đó
- Không thấy
setup.py
đâu . Và thêm__pycache__/
vào.gitignore
nhé -
requests
không phải thư viện chuẩn của Python nên bạn chú ý thêm nó vào tham sốinstall_requires
trong hàmsetup
(cảbeautifulsoup4
nữa) để khi cài đặt nó tự động cài các dependencies này, đỡ phải tải về thủ công như trên - Nếu bạn đã dùng
requests
(được đánh giá tốt hơn nhiều so với thư viện chuẩnurllib
hayurllib2
thì không cần dùngurllib.request
nữa - Một số bạn có gợi ý biến ứng dụng này thành crawler, vậy thì bạn thử cân nhắc tìm hiểu về
scrapy
xem - Để tránh bị ban IP, bạn cũng nên tìm cách spoof user agent và rotate IP
P/s: hiện tại mình có vài cái semi-dedicated proxies mua trên blazingseollc.com nhưng chưa dùng nhiều lắm. Nếu có nhu cầu mượn hay góp tiền mua chung thì liên hệ mình nhé