01/10/2018, 09:08
Làm sao để lấy được các text trong và ngoài thẻ a đây hả các bác
<H3>
<A NAME="abby_siger">Abby Singer</A>
</H3>
"The second-to-last"
<A HREF="/glossary/S#shot">shot</A>
"of the day. Named after"
<A HREF="/glossary/P#prod_manager">production manager</A>
<A HREF="/Name?Singer,+Abby">Abby Singer</A>
", who would frequently call "last shot of the day" or "this shot, and just one more," only to have the"
<A HREF="/glossary/D#director">director</A>
"ask for more"
<A HREF="/glossary/T#take">take</A>
"s. See also "
<A HREF="/glossary/M#martini_shot">martini shot</A>
"."
<HR NOSHADE WIDTH="40%">
Bài liên quan
bác sử dụng module re nhé
https://docs.python.org/3/library/re.html
sao bác edit, em tưởng đó lá string
Bác nói rõ chút đi, bác load dữ liệu từ file, string, hay gì gì.
Mình gỉa dụ là load từ file html nhé. Bạn cứ đọc file với io.open, chuyển nó thành string, sau đó dùng module re mà bụp thôi.
add face hay mail gì để dễ trao đổi được không bác
tui load từ trang imdb.com/glossary/A muốn lấy các text ví dụ như “The second-to-last” thì làm sao bác
vậy bác dùng module requests đi.
http://docs.python-requests.org/en/master/
bác tìm cái request trả lại cái response có data mà bác muốn, xong chuyển cái data đó qua string, vẫn cách cũ, dùng re mà cắt thôi.
Trường hợp response của server là Json thì dễ nữa, cứ xài module json rồi chiến thôi
Bạn dùng cái này thử xem,
requests
+beautifulsoup
là đẹp rồi đấyhttps://www.crummy.com/software/BeautifulSoup/bs4/doc/
http://docs.python-requests.org/en/master/
demo:
có bác nào giải thích giùm e đoạn code này được không ạ
Mong cao nhân nào giải thích giùm e
Nghĩa là cắt
html_hoc
ra theo cụm kí tự<H3>
tạo là 1 list, xong cộng thêm mỗi phần tử một cụm kí tự<H3>
ở đầucode này là code kiểu gọn, hay gọi là list comprehension
Viết dài thì như này
Trong BeautifulSoup.get_text() làm sao đổi thẻ
<BR>
thành ‘\n’ vậy lead.soup =
Text 1Text2
thay vì phải là
Text 1
Text 2
Tạm thời mình dùng
trước khi gọi BeautifulSoup, nhưng mình muốn hỏi có cách nào xử lý trực tiếp trên
soup
không ?Mình không biết nữa chắc chỉ còn cách đó thôi hay b thích dùng cái code kiểu này, thay extract bằng replace là được
Beautifulsoup sibling structure with br tags
extract() chỉ là gỡ cái tag đó ra thôi, không có thay bằng xuống hàng.
Nếu xài ‘lxml’ còn đỡ, chỉ thay
<br>
thành<br/>
nên có gỡ cũng không mất text. Thảm họa nhất là khi dùng ‘html.parser’, nó tự thêm</br>
vào cuối text, khi đó remove thẻ đó ra là mất text trong soup luôn.ext = soup.br.extract()
soup mất toàn bộ text trong thẻ
<br>
ext lẻ loi ko biết đút vào đâu
Xem docs bs4 thì thấy cái replace_with(), tương tụ replace.
Tạm thời report cho bác thế.