0

所以这是我正在运行的脚本,它可以在 Windows 中很好地输出,但在 ubuntu 中,它只是打印一个空列表

import urllib2
import os
import re
import csv
from bs4 import BeautifulSoup

useragent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1309.0 Safari/537.17'

def main():
    # lib-talkingpointsmemo.py
    archive = 'http://talkingpointsmemo.com/archive.php'    
    getweeklinks(archive)

def getweeklinks(archivelink):
    print 'something'
    urls = []
    request = urllib2.Request(archivelink, headers={'User-agent': useragent})
    webpage = urllib2.urlopen(request).read()   
    soup = BeautifulSoup(webpage)
    anchors = soup('a') 
    print anchors
    for a in anchors:
        print a['href']

if __name__ == '__main__' : main()

和输出:

something
[]

怎么了?我正在使用 Ubuntu 12.04.1 LTS

4

1 回答 1

3

嗯......你的脚本没有问题,它在 Ubuntu 上对我来说工作正常,除了我使用的是:Ubuntu 10.04.2 LTS 和 Python 2.6.5

在黑暗中拍摄,但也许可以尝试...

soup = BeautifulSoup(webpage,"html.parser")

...确保您在 Windows 和 ubuntu 测试之间使用相同的解析器。您可能还想尝试其他一些解析器选项

于 2013-02-01T18:58:33.530 回答