使用python从网页检索基本数据

使用python从网页检索基本数据,python,get,urllib2,beautifulsoup,urllib,Python,Get,Urllib2,Beautifulsoup,Urllib,以下是我用urlretrieve(urllib)下载的网页的一部分。我只想将以下网页中的数据写入另一个文本文件,如下所示: ENGINEERING MATHEMATICS-IV, 4 ,36 ,40 , F ENVIRONMENTAL STUDIES, 47, 36, 83 , p ... .. . 喜欢。。 我应该使用哪个模块?哪些命令 thanx提前…) 网页的一部分 工程数学-IV 4. 36 40 F EIT402 环境研究 47 36 83 P EIT403 系统编程 40 36 7

以下是我用urlretrieve(urllib)下载的网页的一部分。我只想将以下网页中的数据写入另一个文本文件,如下所示:

ENGINEERING MATHEMATICS-IV, 4 ,36 ,40 , F
ENVIRONMENTAL STUDIES, 47, 36, 83 , p
...
..
.
喜欢。。 我应该使用哪个模块?哪些命令

thanx提前…)

网页的一部分
工程数学-IV
4.
36
40
F
EIT402
环境研究
47
36
83
P
EIT403
系统编程
40
36
76
P
EIT404
基于微处理器的设计
3.
35
38
F
EIT405
编程范例
42
36
78
P
EIT406
通信系统
9
35
44
F
EIT407
数据结构实验室
10
35
45
F
EIT408
编程环境实验室
20
25
45
F
如果您假设保存的页面以如下方式开始,则效果非常好

<html><head><title>Data Table</title></head><body>
<table id='content'>
<tr align=left bgcolor='#FFFFFF'>       <td>EIT402    </td>
    <td>ENGINEERING MATHEMATICS-IV</td>
        <td align=center>4</td>
        <td align=center>36</td>
        <td align=center>40</td>
        <td align=center>F</td>
    </tr>

“我应该使用哪个模块?”您应该搜索。就在这里,堆栈溢出。如果你搜索一下,你会发现几乎每个人都建议喝一碗美味的汤。其他人都建议使用lxml。现在,请结束这个问题,因为它被问了几十次,每次都有相同的两个答案。使用
urlib2
进行刮取,
beautifulsou
进行解析,理想情况下使用
csv
模块写出文件。正如@S.Lott提到的,网站上有很多相关问题。当你尝试遇到问题或需要对某些特定事物有更深入的了解时,再次询问。祝你好运
import urllib2
import BeautifulSoup

def main():
    infname  = 'htmltable.html'
    outfname = 'courses.txt'

    with open(infname) as inf:
        html = inf.read()

    doc   = BeautifulSoup.BeautifulSoup(html)
    table = doc.find('table',{'id':'content'})

    with open(outfname, 'w') as outf:
        for row in table.findAll('tr'):
            id,name,a,b,c,d = [cell.getText().strip() for cell in row.findAll('td')]
            outf.write("{name}, {a}, {b}, {c}, {d}\n".format(id=id, name=name, a=a, b=b, c=c, d=d))

if __name__=="__main__":
    main()            
<html><head><title>Data Table</title></head><body>
<table id='content'>
<tr align=left bgcolor='#FFFFFF'>       <td>EIT402    </td>
    <td>ENGINEERING MATHEMATICS-IV</td>
        <td align=center>4</td>
        <td align=center>36</td>
        <td align=center>40</td>
        <td align=center>F</td>
    </tr>
ENGINEERING MATHEMATICS-IV, 4, 36, 40, F
ENVIRONMENTAL STUDIES, 47, 36, 83, P
SYSTEM PROGRAMMING, 40, 36, 76, P
MICROPROCESSOR BASED DESIGN, 3, 35, 38, F
PROGRAMMING PARADIGMS, 42, 36, 78, P
COMMUNICATION SYSTEMS, 9, 35, 44, F
DATA STRUCTURE LAB, 10, 35, 45, F
PROGRAMMING  ENVIRONMENTS  LAB, 20, 25, 45, F