国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

BeautifulSoup4小爬蟲

2019-11-08 02:20:52
字體:
來源:轉載
供稿:網友

BeautifulSoup實例1:

from bs4 import BeautifulSoup html_sample='/ <html>/ <body>/ <h1 id="title">Hello world</h1>/ <a href="" class="link">This is link1</a>/ <a href="" class="link">This is link2</a>/ </body>/ </html>' soup=BeautifulSoup(html_sample,'html.parser')PRint(soup.text) # 去除標簽輸出soup的內容header=soup.select('h1') # 搜索soup里的h1標簽,再給headerprint(header) print(header[0]) # 把搜索出來的h1標簽的第一個打印出來print(header[0].text) #第一個h1標簽的內容alink=soup.select('a') # 搜索soup里的a標簽,再給alinkprint(alink) print(alink[0]) #把搜索出來的a標簽的第一個打印出來print(alink[0].text) #第一個a標簽的內容for link in alink: #遍歷alink print(link)for link in alink: print(link.text)for link in alink: print(link['href']) #遍歷a標簽里的href屬性 a='<a href="#link3" class="link" style="CSS code">This is link3</a>'soup2=BeautifulSoup(a,'html.parser')print(soup2.select('a')[0]['style']) #打印第一個a標簽的style屬性

BeautifulSoup實例2:

前面的時間和后面的新聞標題url分別來自2個不同的列表,如何讓他們并行輸出呢?

可以用zip()并行迭代的方法:

for times,news in zip(time, new)

zip()說明:

例如,有兩個列表

a = [1,2,3]b = [4,5,6]

使用zip()函數來可以把列表合并,并創建一個元組對的列表。

zip(a,b)[(1, 4), (2, 5), (3, 6)]

在python 3.0中zip()是可迭代對象,使用時必須將其包含在一個list中,方便一次性顯示出所有結果

list(zip(a,b))[(1, 4), (2, 5), (3, 6)]

zip()參數可以接受任何類型的序列,同時也可以有兩個以上的參數;當傳入參數的長度不同時,zip能自動以最短序列長度為準進行截取,獲得元組。

>>> l1,l2,l3 = (1,2,3),(4,5,6),(7,8,9)>>> zip(l1,l2,l3)[(1, 4, 7), (2, 5, 8), (3, 6, 9)]>>> str1 = 'abc'>>> str2 = 'def123'>>> zip(str1,str2)[('a', 'd'), ('b', 'e'), ('c', 'f')]

zip()方法用在for循環中,就會支持并行迭代:

l1 = [2,3,4]l2 = [4,5,6]for (x,y) in zip(l1,l2):	print x,y,'--',x*y2 4 -- 83 5 -- 154 6 -- 24
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃园市| 孝昌县| 南皮县| 临武县| 图们市| 铜梁县| 宿松县| 秦皇岛市| 西昌市| 六安市| 蕉岭县| 佛冈县| 江西省| 石台县| 康乐县| 东阿县| 七台河市| 房产| 梅州市| 景谷| 万年县| 读书| 丽江市| 长治市| 进贤县| 青冈县| 达州市| 丰镇市| 西乌珠穆沁旗| 上高县| 彭阳县| 财经| 韶关市| 无为县| 尉犁县| 平潭县| 德安县| 池州市| 静乐县| 安新县| 城步|