繁体   English   中英

使用正则表达式在python中生成网址列表

[英]produce list of urls in python using regular expressions

我的目标是:提取此url中的所有成绩单,并清理它们以供我特殊使用。
我需要递归提取遵循模式的链接。 我是新手,无法制定适用的完整代码。

以下是一些有关URL外观的示例:

http://tvmegasite.net/transcripts/oltl/main/1998transcripts.shtml
http://tvmegasite.net/transcripts/oltl/older/2004/oltl-trans-01-20-04.htm
http://tvmegasite.net/transcripts/amc/main/2003transcripts.shtml
http://tvmegasite.net/transcripts/amc/older/2002/amc-trans-01-08-02.shtml

因此,所有内容都以http://tvmegasite.net/transcripts开头,然后是显示缩写,然后是main或更旧的等等。

到目前为止,我已经尝试过:使用BeautifulSoup可以很容易地从特定页面获取url,但是我还没有弄清楚如何递归地进行操作。 我当时只是想使用Scrapy之类的抓取工具从tvmegasite.net/transcripts开始获取所有网址,然后使用re包搜索与该模式匹配的网址。 我仍然不确定如何将其变成完整的代码。 据我所知,这些可能是可以起作用的正则表达式:

http://tvmegasite.net/transcripts\w+\/main/\d+\w+\.shtml
http://tvmegasite.net/transcripts\w+\/older/\d+/\w+\-\w+\-\d+\-\d+\.shtml

如果使用Scrapy,则不需要正则表达式-或至少可以将它们限制为最小值。 例如,使用LxmlLinkExtractor可以设置要遵循的URL( allow )和在XPath分支中的restrict_xpathsLxmlLinkExtractor )。

您可以在allow限制中使用您的正则表达式(乍一看对我来说很好)–对于此站点,您不需要XPath限制。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM