PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Python
[問題] 爬蟲re.findall() 問題
作者:
mark31731123
(mark31731123)
2019-10-27 15:42:35
各位好,小弟看了python的爬蟲基礎
要把網頁的這段爬下來<title>Scraping tutorial 1 | 莫烦Python</title>
看了教學是用以下這段
res=re.findall(r"<title>(.+?)</title>",html)
print(res[0])
想問的是用r"" 這個用法裡面為什麼不是用r"<title>[.+?]</title>"
而是用(.+?) ,搞不太懂()的意義,也搞不太懂有沒有加?的差別
懇請各位大大解釋
作者:
penut85420
(PenutGGorz)
2019-10-27 15:49:00
()跟[]的用法是不一樣的,例如[ABC]代表只要是ABC其中一個字就算有符合,()則是表示群組的意思。有加問號代表找最短的字串
作者:
mark31731123
(mark31731123)
2019-10-27 15:55:00
群組的話不是應該用.group()的形式去print出來嗎?可是用這種方式卻會跳error code
作者:
penut85420
(PenutGGorz)
2019-10-27 16:08:00
.group 跟 findall 其實還蠻類似的,有error可能是別的問題
作者:
mark31731123
(mark31731123)
2019-10-27 16:13:00
而且為什麼是用res[0]的方式阿,代表網頁是list?
作者:
penut85420
(PenutGGorz)
2019-10-27 16:17:00
因為findall會將所有符合的情況以list回傳,例如html="<title>A</title><title>B</title><title>C</title>", 那re.findall就會回傳["A", "B", "C"]
作者:
mark31731123
(mark31731123)
2019-10-27 16:27:00
感謝解答,原來會以list回傳
繼續閱讀
[問題] 神秘金字塔爬蟲問題
kakar0to
[問題] 如何對array降序排列
seo074482
[問題] python selenium爬蟲問題
jack240102
[問題] codewa 計算字串求解
wahahahaaa
[資訊] 爬蟲相關問題
lucy35
[問題] django-相關問題
Lunaego
[問題] pd.read_csv ParserError
ctr1
[問題] 將XML進行縮排
qazwsx99876
[問題] 可以連到資料庫下語法並取出結果嗎
qazwsx99876
[問題] 如何將資料放入tensor中
j23793276
Links
booklink
Contact Us: admin [ a t ] ucptt.com