Web Scraper不使用Python生成结果

Web Scraper不使用Python生成结果,python,Python,我是一只需要你帮助的小蚱蜢。我做了很多研究,似乎找不到解决办法。我在下面编写了以下代码。当运行时,它不会拉任何标题。我相信我的正则表达式是正确的。不知道问题出在哪里。对一个经验丰富的老师来说可能是显而易见的。提前谢谢 from urllib import urlopen import re url = urlopen('http://www.realclearpolitics.com/epolls/2012/senate/ma/massachusetts_senate_brown_vs_wa

我是一只需要你帮助的小蚱蜢。我做了很多研究,似乎找不到解决办法。我在下面编写了以下代码。当运行时,它不会拉任何标题。我相信我的正则表达式是正确的。不知道问题出在哪里。对一个经验丰富的老师来说可能是显而易见的。提前谢谢

from urllib import urlopen

import re

url = urlopen('http://www.realclearpolitics.com/epolls/2012/senate/ma/massachusetts_senate_brown_vs_warren-2093.html#polls').read()

'''
a href="http://multimedia.heraldinteractive.com/misc/umlrvnov2012final.pdf">Title a>
'''

A = 'a href.*pdf">(expression to pull everything) a>' 

B = re.compile(A) 

C = re.findall(B,url)

print C

这在这里经常出现,所以。与其使用正则表达式,不如使用允许搜索/遍历文档树的HTML解析器

我将使用:

美丽的汤解析你给它的任何东西,并为你做树遍历的事情。您可以告诉它“查找所有链接”,或“查找类externalLink的所有链接”,或“查找URL与“foo.com”匹配的所有链接”,或“查找包含粗体文本的表标题,然后给我该文本。”


我将回应关于不使用正则表达式解析HTML的另一条评论,但有时它又快又简单。您的示例中的HTML似乎不太正确,但我会尝试以下方法:

re.findall('href.*?pdf">(.+?)<\/a>', A)
re.findall('href.*pdf“>(.+?)”,A)

不要试图用正则表达式解析HTML。阅读,谢谢。我一直在调查BeautifulSoup,会尝试一下的。我感谢您的及时反馈。
re.findall('href.*?pdf">(.+?)<\/a>', A)