from bs4 import BeautifulSoup<html>
<head><meta charset="UTF-8"><title>~หน้าทดสอบซุปสวย~</title></head>
<body>
<div class="klongyai">
    <div id="huakho"><img src="https://phyblas.hinaboshi.com/rup/thema/qb.png" width="180"><br>
    <h3>ว่าด้วยเรื่องของอาหย่อย</h3></div><br><br>
    <div class="klonglek" id="wali1">
        <a href="walidet/946641382021300"><img src="rup/rupprakopwalidet/946641382021300.jpg"></a>
        <h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>
        <span class="chue kirin">#โมริโนะ คิริง</span>
    </div>
    <br><br><div id="qb">/人◕ ‿‿ ◕人\</div><br><br>
    <div class="klonglek" id="wali2">
         <a href="walidet/1793364814015615"><img src="rup/rupprakopwalidet/1793364814015615.jpg"><h4 class="khokhwam">"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่"</h4><span  class="chue kazuma">#อาซึมะ คาซึมะ</span></a>
    </div>
</div>
<p align="center"><a href="https://hinaboshi.com"><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>
</body>
<style>#huakho,#qb {text-align:center}
.klongyai {width:800px;; background:#F8E290; margin:50px; padding:20px}
.chue {color: #12B6A6; font-weight:bold}
h4 {font-weight:100}</style>
</html>
import requests
url_naweb = 'https://hinaboshi.com/súpđẹp.html'
r = requests.get(url_naweb)
r.encoding = 'utf-8' # กำหนด encoding กันปัญหาการถอดรหัสผิดแบบ
sup = BeautifulSoup(r.text,'lxml')pip install lxmltype(sup) # ได้ bs4.BeautifulSoupprint(sup.prettify())<html>
 <head>
  <meta charset="utf-8"/>
  <title>
   ~หน้าทดสอบซุปสวย~
  </title>
 </head>
 <body>
  <div class="klongyai">
   <div id="huakho">
    <img src="https://phyblas.hinaboshi.com/rup/thema/qb.png" width="180"/>
    <br/>
    <h3>
     ว่าด้วยเรื่องของอาหย่อย
    </h3>
   </div>
   <br/>
   <br/>
   <div class="klonglek" id="wali1">
    <a href="walidet/946641382021300">
     <img src="rup/rupprakopwalidet/946641382021300.jpg"/>
    </a>
    <h4 class="khokhwam">
     "ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"
    </h4>
    <span class="chue kirin">
     #โมริโนะ คิริง
    </span>
   </div>
   <br/>
   <br/>
   <div id="qb">
    /人◕ ‿‿ ◕人\
   </div>
   <br/>
   <br/>
   <div class="klonglek" id="wali2">
    <a href="walidet/1793364814015615">
     <img src="rup/rupprakopwalidet/1793364814015615.jpg"/>
     <h4 class="khokhwam">
      "ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"
     </h4>
     <span class="chue kazuma">
      #อาซึมะ คาซึมะ
     </span>
    </a>
   </div>
  </div>
  <p align="center">
   <a href="https://hinaboshi.com">
    <<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->>
   </a>
  </p>
 </body>
 <style>
  #huakho,#qb {text-align:center}
.klongyai {width:800px;; background:#F8E290; margin:50px; padding:20px}
.chue {color: #12B6A6; font-weight:bold}
h4 {font-weight:100}
 </style>
</html>print(sup.find_all('img'))
# ได้ [<img src="https://phyblas.hinaboshi.com/rup/thema/qb.png"  width="180"/>, <img  src="rup/rupprakopwalidet/946641382021300.jpg"/>, <img  src="rup/rupprakopwalidet/1793364814015615.jpg"/>]print(sup('img'))print(sup('h4'))
# ได้ [<h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>,  <h4  class="khokhwam">"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"</h4>]print(sup.find('a'))
#  ได้ <a href="walidet/946641382021300"><img src="rup/rupprakopwalidet/946641382021300.jpg"/></a>print(sup.a)print(sup.find_all('div')[2].find('h4'))
# หรือ print(sup('div')[2].h4)
# ได้ <h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>print(sup.html.body.div.div.h3)
# ได้ <h3>ว่าด้วยเรื่องของอาหย่อย</h3>print(sup.find(align='center'))
# ได้ <p align="center"><a href="https://hinaboshi.com"><<--  รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>print(sup.find(attrs={'align':'center'}))print(sup.find_all(class_='khokhwam'))
# ได้ [<h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>,  <h4  class="khokhwam">"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"</h4>]print(sup.find_all(class_='chue'))
# ได้ [<span class="chue kirin">#โมริโนะ คิริง</span>,  <span class="chue kazuma">#อาซึมะ คาซึมะ</span>]print(sup.find('h4',class_='khokhwam'))
# ได้ <h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>img1 = sup.find_all('img')[1]
print(img1)
# ได้ <img src="rup/rupprakopwalidet/946641382021300.jpg"/>
print(img1['src'])
# ได้ rup/rupprakopwalidet/946641382021300.jpghuakho = sup.find(class_='chue')
print(huakho) # ได้ <span class="chue kirin">#โมริโนะ คิริง</span>
print(huakho.name) # ได้ spanprint(sup.h4)
# ได้ <h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>
print(sup.h4.contents)
# ได้ ['"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"']print(sup.body.text)ว่าด้วยเรื่องของอาหย่อย
"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"
#โมริโนะ คิริง
/人◕ ‿‿ ◕人\
"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"#อาซึมะ คาซึมะ
<<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->>print(sup.find(id='wali1').children)
# ได้ <list_iterator object at 0x180f38d2e8>
print(list(sup.find(id='wali1').children))
# ได้ ['\n', <a href="walidet/946641382021300"><img  src="rup/rupprakopwalidet/946641382021300.jpg"/></a>, '\n',  <h4  class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>,  '\n', <span class="chue kirin">#โมริโนะ คิริง</span>, '\n']print(len(list(sup.body.children))) # ได้ 5
print(len(list(sup.body.descendants))) # ได้ 46
a = sup.find(id='wali2').a
print(a)
for d in a.descendants:
    print(d.name)<a href="walidet/1793364814015615"><img src="rup/rupprakopwalidet/1793364814015615.jpg"/><h4  class="khokhwam">"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"</h4><span  class="chue kazuma">#อาซึมะ คาซึมะ</span></a>
img
h4
None
span
Noneprint(sup.body.parent.name) # ได้ html
print(sup.html.parent.name) # ได้ [document]print([p.name for p in sup.find(id='wali1').parents])
# ได้ ['div', 'body', 'html', '[document]']print(sup.find_all(re.compile(r'h\d')))
# ได้ [<h3>ว่าด้วยเรื่องของอาหย่อย</h3>, <h4 class="khokhwam">"ของอร่อยแบบนี้ไม่ว่าจะฤดูไหนมันก็อร่อยอยู่ดีแหละ"</h4>, <h4 class="khokhwam">"ต่อให้เป็นของที่อร่อยแค่ไหนหากกินทุกวันก็ต้องเบื่อ"</h4>]ww = sup.find_all(id=re.compile(r'w.+'))
print([w['id'] for w in ww]) # ได้ ['wali1', 'wali2']print(sup.p)
# ได้ <p align="center"><a href="https://hinaboshi.com"><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>
sup.p['align'] = 'right'
print(sup.p)
# ได้ <p align="right"><a href="https://hinaboshi.com"><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>
del sup.p['align']
print(sup.p)
# ได้ <p><a href="https://hinaboshi.com"><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>print(sup.a)
# ได้ <a href="walidet/946641382021300"><img src="rup/rupprakopwalidet/946641382021300.jpg"/></a>
sup.a['target'] = '_blank'
print(sup.a)
# ได้ <a href="walidet/946641382021300" target="_blank"><img src="rup/rupprakopwalidet/946641382021300.jpg"/></a>print(sup.p)
# ได้ <p><a href="https://hinaboshi.com"><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></a></p>
sup.p.a.unwrap()
print(sup.p)
# ได้ <p><<-- รวมคำแปลวลีเด็ดจากญี่ปุ่น -->></p>sup.p.contents = []
print(sup.p) # ได้ <p></p>sup.head.contents = []
sup.body.contents = []
sup.style.contents = []
print(sup)<html>
<head></head>
<body></body>
<style></style>
</html>url_naweb = 'https://hinaboshi.com/súpđẹp.html'
r = requests.get(url_naweb)
r.encoding = 'utf-8'
sup = BeautifulSoup(r.text,'lxml')
for klong in sup(class_='klonglek'):
    src = klong.img['src']
    chue_file = src.split('/')[-1]
    url_file = 'https://hinaboshi.com/'+src
    with open(chue_file,'wb') as f:
        f.write(requests.get(url_file).content)ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ