それは間違いなく可能であり、答えは次のとおりです。
div.pager a:contains("Last")
そして、ここでは、Pythonスクリプト内で使用されるセレクタである:
import requests
from lxml import html
main_link = "https://www.yify-torrent.org/search/1080p/"
base_link = "https://www.yify-torrent.org"
def get_links(item_link):
response = requests.get(item_link).text
tree = html.fromstring(response)
next_page = tree.cssselect('div.pager a:contains("Next")')[0].attrib["href"]
last_page = tree.cssselect('div.pager a:contains("Last")')[0].attrib["href"]
print(base_link + next_page," ",base_link + last_page)
get_links(main_link)
結果:
https://www.yify-torrent.org/search/1080p/t-2/
https://www.yify-torrent.org/search/1080p/t-255/
出典
2017-07-27 22:22:29
SIM
私はしないでくださいcssだけで可能だと思う。 [Here](https://stackoverflow.com/questions/5441680/css-selector-based-on-element-text)は、それについて話している投稿です。 –
残念ながら、特定のテキストのセレクタを作成することはできません(https://stackoverflow.com/questions/1520429/is-there-a-css-selector-for-elements-containing-certain-textを参照)。しかし、あなたは '.pager a:last-child'を実行することによって、あなたが望むものを達成できるかもしれません。 – joshhunt
[特定のテキストを含む要素のCSSセレクタはありますか?](https://stackoverflow.com/questions/1520429/is-there-a-css-selector-for-elements-containing-certain-text) – Hans