我一直在尝试使用BeautifulSoup学习一些html解析,并试图让它适用于reddit。这是我的代码,
!/usr/bin/python
import BeautifulSoup
from BeautifulSoup import BeautifulSoup as BSoup
import os, re, sys, math, os.path, urllib, string, random, time
url = urllib.urlopen(sys.argv[1]).read()
soup= BSoup(url)
links = []
for link in soup.findAll('a',attrs={'class':'comments may-blank'}):
links.append(link.get("href"))
print links
我已经成功测试了r / gaming和r / worldnews的代码,但r / gifs的代码失败了。我还验证了所有subreddits都使用了相同的类。另外,我试过了
for link in soup.findAll('a'):
但代码仍无法找到超链接。关于为什么会发生这种情况以及如何使代码适用于所有subreddits的任何建议。
答案 0 :(得分:0)
如果你经常这样做,你会遇到这个。
As a reminder to developers, we recommend that clients make no
more than <a href="http://github.com/reddit/reddit/wiki/API">one
request every two seconds</a> to avoid seeing this message.
Reddit这样做是为了防止蜘蛛和爬虫滥用。
请求空间请求,或者更优选地使用他们的Python api PRAW: