如何将文本文件中的Tumblr URL与正则表达式和Python匹配

如何将文本文件中的Tumblr URL与正则表达式和Python匹配,python,regex,hyperlink,tumblr,Python,Regex,Hyperlink,Tumblr,我对regex很陌生,所以我自己尝试了一段时间来解决这个问题,但没有找到解决办法。(我正试图用Python 2.7实现这一点) 我有一个来自帖子和笔记的tumblr链接列表。 他们看起来像 "http://TumblrUsername.tumblr.com/post/hello/notes/somemoresutff/464654" 我要做的是只选择“”部分,而保留其余部分,这样我就可以编译tumblr用户列表 我的代码看起来像这样,但我的问题是如何选择我想要的 import urllib

我对regex很陌生,所以我自己尝试了一段时间来解决这个问题,但没有找到解决办法。(我正试图用Python 2.7实现这一点)

我有一个来自帖子和笔记的tumblr链接列表。 他们看起来像

"http://TumblrUsername.tumblr.com/post/hello/notes/somemoresutff/464654" 
我要做的是只选择“”部分,而保留其余部分,这样我就可以编译tumblr用户列表

我的代码看起来像这样,但我的问题是如何选择我想要的

import urllib
import requests
import lxml
from bs4 import BeautifulSoup


def find_notes():

    file = open('output.txt', 'w')

    f = requests.get('http://fullthrottleauto.tumblr.com/post/132323884114/treunenthibault-ferrari-599xx-evo-as-i-love')

    soup = BeautifulSoup(f.text, "lxml")

    for post_note in soup.find_all('a', href=True):

        print post_note['href']
        returnline = str(post_note['href'])

        if '.tumblr.com/' in returnline:
           ## I need to do some thing here to extract "only the http://username.tumblr.com/"
            file.write(returnline + '\n')


find_notes()

下面的代码为什么工作正则表达式<代码>它打印链接并将它们写入路径指定的文件中

import urllib
import requests
import lxml
from bs4 import BeautifulSoup


def find_notes():

    data_file = open(r"C:\Users\USER_NAME\Desktop\output.txt", 'ab')

    f = requests.get('http://fullthrottleauto.tumblr.com/post/132323884114/treunenthibault-ferrari-599xx-evo-as-i-love')

    soup = BeautifulSoup(f.text, "lxml")

    for post_note in soup.find_all('a', {'rel':'nofollow'}):
        if post_note['href'].endswith('.tumblr.com/') and post_note['href'].startswith('http') :
            print post_note['href']
            data_file.write(post_note['href']+'\n')
    data_file.close()


find_notes()
它打印-

http://jambo077.tumblr.com/
http://jambo077.tumblr.com/
http://thelordlux.tumblr.com/
http://thelordlux.tumblr.com/
http://dp0d.tumblr.com/
http://dp0d.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://dp0d.tumblr.com/
http://dp0d.tumblr.com/
http://fraggreen.tumblr.com/
http://fraggreen.tumblr.com/
http://amazingcars.tumblr.com/
http://kennylayy.tumblr.com/
http://kennylayy.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://coco2280.tumblr.com/
http://coco2280.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://devrimdeniz3.tumblr.com/
http://devrimdeniz3.tumblr.com/
http://nicholasembly.tumblr.com/
http://nicholasembly.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://nicholasembly.tumblr.com/
http://nicholasembly.tumblr.com/
http://geee22.tumblr.com/
http://geee22.tumblr.com/
http://donymadero.tumblr.com/
http://donymadero.tumblr.com/
http://avromen.tumblr.com/
http://avromen.tumblr.com/
http://carbonmotors.tumblr.com/
http://carbonmotors.tumblr.com/
http://blackdragonheartrider.tumblr.com/
http://blackdragonheartrider.tumblr.com/
http://travelerintheworldofdreams.tumblr.com/
http://travelerintheworldofdreams.tumblr.com/
http://evo-dreaming.tumblr.com/
http://evo-dreaming.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://kareem121.tumblr.com/
http://kareem121.tumblr.com/
http://hotmenandhotcars.tumblr.com/
http://hotmenandhotcars.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://schnixon.tumblr.com/
http://schnixon.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://schnixon.tumblr.com/
http://schnixon.tumblr.com/
http://mikeawwr.tumblr.com/
http://mikeawwr.tumblr.com/
http://joshke1.tumblr.com/
http://joshke1.tumblr.com/
http://banginscrew.tumblr.com/
http://banginscrew.tumblr.com/
http://smiley-sj.tumblr.com/
http://smiley-sj.tumblr.com/
http://char1ie1000.tumblr.com/
http://char1ie1000.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://char1ie1000.tumblr.com/
http://char1ie1000.tumblr.com/
http://relentless-haedons.tumblr.com/
http://relentless-haedons.tumblr.com/
http://metinpurde.tumblr.com/
http://metinpurde.tumblr.com/
http://superkingchris.tumblr.com/
http://superkingchris.tumblr.com/
http://16frango16.tumblr.com/
http://16frango16.tumblr.com/
http://franck-brevet.tumblr.com/
http://franck-brevet.tumblr.com/
http://car1ba.tumblr.com/
http://car1ba.tumblr.com/
http://trezio.tumblr.com/
http://trezio.tumblr.com/
http://molounhuevofrito.tumblr.com/
http://molounhuevofrito.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://rebeccabum.tumblr.com/
http://rebeccabum.tumblr.com/
http://madv8.tumblr.com/
http://madv8.tumblr.com/
http://jrcs87lol.tumblr.com/
http://jrcs87lol.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://jrcs87lol.tumblr.com/
http://jrcs87lol.tumblr.com/
http://alegasta.tumblr.com/
http://alegasta.tumblr.com/
http://ericj3love.tumblr.com/
http://ericj3love.tumblr.com/
http://frostfiree.tumblr.com/
http://frostfiree.tumblr.com/
http://bull58.tumblr.com/
http://bull58.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://fumihirokoyama.tumblr.com/
http://fumihirokoyama.tumblr.com/
http://thethatnoelguysstuff.tumblr.com/
http://thethatnoelguysstuff.tumblr.com/
http://fullthrottleauto.tumblr.com/
http://thethatnoelguysstuff.tumblr.com/
http://thethatnoelguysstuff.tumblr.com/
http://peachedme.tumblr.com/
http://peachedme.tumblr.com/
http://il-salice-errante.tumblr.com/
http://il-salice-errante.tumblr.com/
http://fajhr.tumblr.com/
http://fajhr.tumblr.com/
http://jah-eras.tumblr.com/
http://jah-eras.tumblr.com/
http://fullthrottleauto.tumblr.com/

你试过的代码在哪里?谢谢你的回复。目前没有具体的代码。让我发布我到目前为止的内容。文档也是如此,请看一下
*
部分、
+?
部分和
re.findall()
部分,然后在这里提问之前尝试一下。
result=re.findall(“http://TumblrUsername.tumblr.com“,主题,关于忽略事件)
@SIslam我认为
tumblusername
在这里不是固定的,它是一个用户名。所以可能
re.findall(r'http://.+?\.tumblr\.com',string)
。或者只提取用户名部分:
re.findall(r'http://(.+?)\.tumblr\.com',string)