【发布时间】:2021-11-24 00:45:26
【问题描述】:
我正在使用BeautifulSoup 进行网络抓取,我需要获取一个位于 script 标记中的链接,所以我使用它
soup.find(string=re.compile("https://link9876.net/index.php"))
这会返回下一个字符串
"var link = [];
link[0] = 'https://link1225.com/x/xxxxxx';
link[1] = 'https://link9876.net/index.php?xxxxxxxxx';
link[2] = 'https://link1356.com/index.php?xxxxxxxxx';
..."
(数组中元素的位置和数量每次都会变化)
但我只想得到“*https://link9876.net/index.php*", 解决这个问题的最佳方法是什么?
【问题讨论】:
-
这是一个简单的字符串搜索问题。找到
link[1] =,然后抓取下一个单引号之前的所有内容。 -
@TimRoberts 不总是
link[1] == my_link如果我再次执行脚本,顺序会发生变化,现在可以是link[0] == my_link或任何其他。 -
请发布代码以重现此结果。
标签: python regex beautifulsoup