在python中使用beautifulsoup4解析html信息

时间:2015-01-01 01:14:20

标签: python html parsing

我正和一位朋友一起开展一个python项目,我们想制作一些可以下载页面http://projecteuler.net/problem的内容并解决你选择的问题,然后将其打印回来:

Project Euler Problem 7:100001 prime     通过列出前六个素数:2,3,5,7,11和13,我们可以看到第6个素数是13。

What is the 10 001st prime number?
例如,你会做类似python script_name.py 7的事情,它会打印出^^。

一直试图找到多种方法来做到这一点,但我不明白beautifulsoup4是如何工作的。如果你有脚本,解释脚本的工作方式也很有帮助

谢谢你!

1 个答案:

答案 0 :(得分:0)

这应该可以帮助您入门:

import sys
import urllib2
from bs4 import BeautifulSoup

problem_url  = "https://projecteuler.net/problem={}".format(sys.argv[1])
problem_page = urllib2.urlopen(problem_url)
soup = BeautifulSoup(problem_page.read())

problem_text = soup.find("div", {"class": "problem_content"}).text
print problem_text

用法:

$ ./euler.py 4

输出:

  

回文数字两种方式相同。由两个2位数字的乘积制成的最大回文是9009 = 91×99。   找到由两个3位数字的乘积制成的最大回文。