国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python 如何獲取頁(yè)面所有a標(biāo)簽下href的值

瀏覽:43日期:2022-06-20 14:31:38
看代碼吧~

# -*- coding:utf-8 -*-#python 2.7#http://tieba.baidu.com/p/2460150866#標(biāo)簽操作 from bs4 import BeautifulSoupimport urllib.requestimport re #如果是網(wǎng)址,可以用這個(gè)辦法來(lái)讀取網(wǎng)頁(yè)#html_doc = 'http://tieba.baidu.com/p/2460150866'#req = urllib.request.Request(html_doc) #webpage = urllib.request.urlopen(req) #html = webpage.read() html='''<html><head><title>The Dormouse’s story</title></head><body><p name='dromouse'><b>The Dormouse’s story</b></p><p class='story'>Once upon a time there were three little sisters; and their names were<a rel='external nofollow' rel='external nofollow' id='xiaodeng'><!-- Elsie --></a>,<a rel='external nofollow' rel='external nofollow' id='link2'>Lacie</a> and<a rel='external nofollow' id='link3'>Tillie</a>;<a rel='external nofollow' rel='external nofollow' id='xiaodeng'>Lacie</a>and they lived at the bottom of a well.</p><p class='story'>...</p>'''soup = BeautifulSoup(html, ’html.parser’) #文檔對(duì)象 #查找a標(biāo)簽,只會(huì)查找出一個(gè)a標(biāo)簽#print(soup.a)#<a rel='external nofollow' rel='external nofollow' id='xiaodeng'><!-- Elsie --></a> for k in soup.find_all(’a’): print(k) print(k[’class’])#查a標(biāo)簽的class屬性 print(k[’id’])#查a標(biāo)簽的id值 print(k[’href’])#查a標(biāo)簽的href值 print(k.string)#查a標(biāo)簽的string

如果,標(biāo)簽<a>中含有其他標(biāo)簽,比如<em>..</em>,此時(shí)要提取<a>中的數(shù)據(jù),需要用k.get_text()

soup = BeautifulSoup(html, ’html.parser’) #文檔對(duì)象#查找a標(biāo)簽,只會(huì)查找出一個(gè)a標(biāo)簽for k in soup.find_all(’a’): print(k) print(k[’class’])#查a標(biāo)簽的class屬性 print(k[’id’])#查a標(biāo)簽的id值 print(k[’href’])#查a標(biāo)簽的href值 print(k.string)#查a標(biāo)簽的string

如果,標(biāo)簽<a>中含有其他標(biāo)簽,比如<em>..</em>,此時(shí)要提取<a>中的數(shù)據(jù),需要用k.get_text()

通常我們使用下面這種模式也是能夠處理的,下面的方法使用了get()。

html = urlopen(url) soup = BeautifulSoup(html, ’html.parser’) t1 = soup.find_all(’a’) print t1 href_list = [] for t2 in t1: t3 = t2.get(’href’) href_list.append(t3)

補(bǔ)充:python爬蟲(chóng)獲取任意頁(yè)面的標(biāo)簽和屬性(包括獲取a標(biāo)簽的href屬性)

看代碼吧~

# coding=utf-8 from bs4 import BeautifulSoup import requests # 定義一個(gè)獲取url頁(yè)面下label標(biāo)簽的attr屬性的函數(shù) def getHtml(url, label, attr): response = requests.get(url) response.encoding = ’utf-8’ html = response.text soup = BeautifulSoup(html, ’html.parser’); for target in soup.find_all(label): try: value = target.get(attr) except: value = ’’ if value: print(value) url = ’https://baidu.com/’ label = ’a’ attr = ’href’ getHtml(url, label, attr)

python 如何獲取頁(yè)面所有a標(biāo)簽下href的值

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 平利县| 三原县| 同德县| 瑞昌市| 新营市| 宜州市| 巩义市| 盐山县| 濮阳市| 兴山县| 子洲县| 潼关县| 会昌县| 珠海市| 北川| 津南区| 丽江市| 南宁市| 行唐县| 邯郸县| 电白县| 青河县| 凌海市| 泸定县| 台中县| 静乐县| 三门峡市| 临高县| 恩平市| 自贡市| 封开县| 丹阳市| 龙江县| 辉县市| 吉安县| 龙里县| 东安县| 华池县| 信丰县| 宜黄县| 甘孜|