用selenium刮取字符串中的python,用re解析
<div type="copy3" class="sc-bxivhb dHqnfT">756 W Peachtree St NW Atlanta GA 30308</div>我想回来
756 W Peachtree St NW Atlanta GA 30308这个判据
("copy3").*?(?=</div>)把我还给你
"copy3" class="sc-bxivhb dHqnfT">756 W Peachtree St NW Atlanta GA 30308但我想把>之前的一切都排除在756之外
我该怎么把这个包括进去?
发布于 2019-01-22 23:01:27
用硒擦拭,用硒得到.
my_element = driver.find_element_by_css_selector('div[type="copy3"]')
address = my_element.text发布于 2019-01-22 22:58:05
匹配一个>,然后捕获一个组中跟随的非<,然后提取该组:
type="copy3"[^>]+>([^<]+)https://regex101.com/r/BX2tVj/1
如果只想匹配第一个<之后的内容,则必须使用lookbehind (只有在确切知道class=""属性可能包含什么的情况下才能可靠):
(?<=type="copy3" class="sc-bxivhb dHqnfT">)[^<]+https://regex101.com/r/BX2tVj/2
或者使用regex模块,这样您就可以使用\K了。
type="copy3"[^>]+>\K[^<]+https://regex101.com/r/BX2tVj/3
import regex
str = '<div type="copy3" class="sc-bxivhb dHqnfT">756 W Peachtree St NW Atlanta GA 30308</div>'
match = regex.search(r'type="copy3"[^>]+>\K[^<]+', str)https://stackoverflow.com/questions/54317630
复制相似问题