您好,我在管理变量内的 html 代码时遇到问题。我想制作一个程序,在网站上登录帐户,然后检查特定位置的某些内容是否已更改,如果是,则向我发送电子邮件或某种通知。import requestsfrom bs4 import BeautifulSoup as bstab = []payload = { 'plates': 'login', 'vin': 'password'}with requests.Session() as s: p = s.post('url', data=payload) print (p.text)soup = bs(p.text,'html.parser')body = soup.find_all("li",{"class" : "state"},"span")a = body[2]print (a)p.text是整个html代码身体看起来像这样[<li class="state first"><p><span>Przyjęto wniosek, trwa postępowanie administracyjne</span></p><img class="arrow" src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"/></li>, <li class="state active"><p><span>Dokument został zamówiony</span></p><img class="arrow" src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status_active.png"/></li>, <li class="state"><p><span>Dokument do odbioru w urzędzie</span></p><img class="arrow" src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"/></li>, <li class="state last"><p><span>Dokument wydany</span></p><img class="arrow" src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"/></li>]主体[2]看起来像这样:<li class="state"><p><span>Dokument do odbioru w urzędzie</span></p><img class="arrow" src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"/></li>src="//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"/>现在我的计划是仅从body[2] 中选择然后将其与包含相同文本的另一个变量进行比较(我从网络上抓取的 body[2] 中的变量希望有一天会改变)如果这两个变量不相同,那么做一些事情(我想我会处理消息部分)我只是不知道如何选择我想要的部分。像管理字符串一样管理它很困难,因为所有这些奇怪的字符(<、>、“、'、/)等。我想我希望我的最终解决方案是这样的if The_part_I_want == The old html code: passelse: send me a notification
1 回答
尚方宝剑之说
TA贡献1788条经验 获得超4个赞
搜索img带有class=arrowin的元素body[2]并获取其src属性。
the_old_url = "//cdn.info-car.pl/webfiles/1590137977316/img/document/selected_status.png"
img = body[2].find('img', class_='arrow')
if img and img['src'] == the_old_url:
pass
else:
send_notification()
添加回答
举报
0/150
提交
取消