Python 美苏不能';我找不到所有的东西

Python 美苏不能';我找不到所有的东西,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我正试图从网页中提取一些数据,我要提取的数据设置如下: <div id="pagetitle"> <a href="some_link">some_text</a> "some_text2" <a href="some_link2">some_text3</a> </div> 当我这样做时,我只会得到一些文本

我正试图从网页中提取一些数据,我要提取的数据设置如下:

<div id="pagetitle">
      <a href="some_link">some_text</a>
      "some_text2"
      <a href="some_link2">some_text3</a>
</div>
当我这样做时,我只会得到一些文本,我还尝试了:

author = soup.find_all('a', {'id' : 'pagetitle'})
但我得到了一个空列表,我还尝试了:

author = soup.find(id='pagetitle').prettify()
我得到了全部代码,但我不知道如何只得到
一些文本3
我还尝试使用不同的解析器,但都不起作用
如果这很难理解,也很抱歉,但这是我在这里的第二个问题,如果有,我将接受所有建议。

您可以将CSS选择器与
:nth-last-child()一起使用。
。例如:

from bs4 import BeautifulSoup


html_doc = """
<div id="pagetitle">
      <a href="some_link">some_text</a>
      "some_text2"
      <a href="some_link2">some_text3</a>
</div>"""

soup = BeautifulSoup(html_doc, "html.parser")

txt = soup.select_one("#pagetitle > a:nth-last-child(1)").text
print(txt)

或者:使用
[-1]
获取最后一个元素:

txt = soup.select("#pagetitle a")[-1].text
print(txt)

您确定从响应中得到了您认为得到的HTML吗?请小心分配
soup=soup(第页,“html5lib”)
,因为您可能会丢失对
bs4
的引用。为变量选择其他名称。
txt = soup.select("#pagetitle a")[-1].text
print(txt)