V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
omg21
V2EX  ›  Python

求教关于抓取内容的思路

  •  
  •   omg21 · 2016-04-04 16:13:48 +08:00 · 2298 次点击
    这是一个创建于 3144 天前的主题,其中的信息可能已经有所发展或是发生改变。
    <table width="722" height="166" border="1">
    <tr>
    <td id=1>C 和指针 Pointers On C</td>
    <td id=2>2008-04</td>
    <td id=3>Kenneth A.Reek 、 徐波</td>
    <td id=4>¥ 54.70</td>
    </tr>
    <tr>
    <td id=1>嗨翻 C 语言</td>
    <td id=2>2013-09</td>
    <td id=3>格里菲思 (David Griffiths)</td>
    <td id=4>¥ 84.00</td>
    </tr>
    <tr>
    <td id=1>C 语言入门经典(第 5 版)</td>
    <td id=2>2013-11</td>
    <td id=3>霍尔顿 (Ivor Horton)</td>
    <td id=4>¥ 45.30</td>
    </tr>
    </table>

    如果要抓取这样的代码,把内容输出到文件,输出成下面的格式,思路是怎样的?输出的格式我会做,这个不用讲。
    C 和指针 Pointers On C 2008-04 Kenneth A.Reek 、 徐波 ¥ 54.70
    嗨翻 C 语言 2013-09 格里菲思 ¥ 84.00
    C 语言入门经典(第 5 版) 2013-11 霍尔顿 (Ivor Horton) ¥ 45.30

    难到就是用正则“<tr><td id=1>”取出书名,用“</td><td id=2>”取出日期吗?
    str1 = []
    str1 = re.compile(r'<tr><td id=1> (.*?)</td>',re.DOTALL).findall(data)
    这样把书名存到 str1 里了,那后边再取日期,人名,价格等存到哪里呢?
    7 条回复    2016-04-09 21:33:35 +08:00
    darkbread
        1
    darkbread  
       2016-04-04 18:47:37 +08:00 via iPhone
    str2 , str3 , str4
    omg21
        2
    omg21  
    OP
       2016-04-04 18:57:13 +08:00
    @darkbread 这样做会不会出现错位的现象呢?
    loalj
        3
    loalj  
       2016-04-04 21:07:49 +08:00
    这种情况直接解析 dom 树吧,遍历每个 tr ,再从 tr 里边取出书名,日期什么的。
    caspartse
        4
    caspartse  
       2016-04-05 00:15:05 +08:00
    可以以每本书为单位,匹配信息,然后存储到字典里。
    amustart
        5
    amustart  
       2016-04-05 12:48:06 +08:00
    有种东西叫做 HTML 解析器
    ytmsdy
        6
    ytmsdy  
       2016-04-05 16:57:55 +08:00
    BeautifulSoup
    oncew
        7
    oncew  
       2016-04-09 21:33:35 +08:00
    用 BeautifulSOUP select 选择器,几秒钟就搞定了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5421 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 07:09 · PVG 15:09 · LAX 23:09 · JFK 02:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.