Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何解析属性?_Python_Selenium Webdriver_Beautifulsoup - Fatal编程技术网

Python 如何解析属性?

Python 如何解析属性?,python,selenium-webdriver,beautifulsoup,Python,Selenium Webdriver,Beautifulsoup,如何从数据值解析值 <a href="example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a> 它将通过以下方式工作: >>> from bs4 import BeautifulSoup >>

如何从数据值解析值

<a href="example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a>

它将通过以下方式工作:

>>> from bs4 import BeautifulSoup
>>> page = '''<a href="http://example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a>'''
>>> soup = BeautifulSoup(page, features="html.parser")
>>> a = soup.find('a')
>>> a.attrs
{'data-changescale': '1', 'data-value': '1212749', 'data-market-id': 'curr_one', 'data-type': 'price', 'href': 'http://example.com', 'data-symbol': 'curr_one', 'data-ref': 'TopRates'}
>>> 
>>> a.attrs['data-value']
'1212749'
>>>
>>来自bs4导入组
>>>页码=“”“
>>>soup=BeautifulSoup(第页,features=“html.parser”)
>>>a=汤。查找('a')
>>>a.attrs
{'data-changescale':'1','data value':'1212749','data market id':'curr_one','data type':'price','href':'http://example.com“,”数据符号“:”当前“,”数据引用“:”顶级利率“}
>>> 
>>>a.attrs['data-value']
'1212749'
>>>

使用更快的CSS选择器

from bs4 import BeautifulSoup
data='''<a href="example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a>'''
soup=BeautifulSoup(data,'html.parser')
print(soup.select_one('a[data-value]')['data-value']) 

在你的情况下,这应该是有效的

soup = BeautifulSoup(browser.page_source, features="html.parser")
print(soup.select_one('a[data-value]')['data-value'])

找到元素后,可以通过以下方式获取属性值:

from bs4 import BeautifulSoup

html = '''<a href="example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a>'''
soup = BeautifulSoup(html, features="html.parser")

print (soup.find('a')['data-value'])
soup = BeautifulSoup(browser.page_source, features="html.parser")
print(soup.select_one('a[data-value]')['data-value'])
from bs4 import BeautifulSoup

html = '''<a href="example.com" data-ref="TopRates" data-type="price" data-value="1212749" data-changescale="1" data-market-id="curr_one" data-symbol="curr_one">curr_one</a>'''
soup = BeautifulSoup(html, features="html.parser")

print (soup.find('a')['data-value'])
1212749