MYTEXT之间的文本,python-2.7,web-scraping,beautifulsoup"/>

首页 > 解决方案 > 在 div 类中获取MYTEXT之间的文本

问题描述

我有这个源代码:

<div class="col-xs-12 col-sm-6 col-md-6">
<a class="btn btn-md white badge-success mt-5" 
href="https://stockinvest.us/trade/WRN" id="trade500signalsTop">
WRN is a Buy Candidate
</a>

我想打印“WRN is a Buy Candidate”

我尝试了以下方法,但它不起作用:

page2 = requests.get('https://stockinvest.us/technical-analysis/WRN')
soup2 = BeautifulSoup(page2.text, 'html.parser')
for link in soup2.find_all('a', id='trade500signalsTop'):
link_text = link.text
print link_text

标签: python-2.7web-scrapingbeautifulsoup

解决方案


header在请求页面时使用。

import requests
from bs4 import BeautifulSoup
headers = {'User-Agent':
       'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36'}

page2 = requests.get('https://stockinvest.us/technical-analysis/WRN',headers=headers)
soup2 = BeautifulSoup(page2.text, 'html.parser')
for link in soup2.find_all('a', id='trade500signalsTop'):
 link_text = link.text
 print(link_text)

输出:

WRN is a Buy Candidate

而不是find_all()您可以使用find()仅获取一个特定值。

print(soup2.find('a', id='trade500signalsTop').text)

推荐阅读