Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python2.7:从网站上抓取表格_Python_Python 2.7_Web Scraping - Fatal编程技术网

Python2.7:从网站上抓取表格

Python2.7:从网站上抓取表格,python,python-2.7,web-scraping,Python,Python 2.7,Web Scraping,考虑到我对编程知之甚少,我可能做得不正确,但我想知道我是如何在python中从html表中提取数据并将其与自己的类关联起来的……我真的不知道我在做什么,这里是一个示例: <div class="example"> <a href="/example/thisexample"> <span class="name">Product name</span> <

考虑到我对编程知之甚少,我可能做得不正确,但我想知道我是如何在python中从html表中提取数据并将其与自己的类关联起来的……我真的不知道我在做什么,这里是一个示例:

<div class="example">
    <a href="/example/thisexample">
      <span class="name">Product name</span>
    </a>
      <table>
        <tbody>
          <tr class="odd"> Some data </tr>
          <tr class="even"> Some data </tr>
          <tr class="odd"> Some data </tr>
          <tr class="even"> Some data </tr>
          <tr class="odd"> More data</tr>
        </tbody>
      </table>
</div>

一些数据
一些数据
一些数据
一些数据
更多数据
到目前为止,我可以使用lxml收集数据并将其放在列表中,但是,该网页包含许多类(如示例),并且所有这些类都有不同的表,表中的行比上面的多或少。我希望这些表中的数据与类关联,这里是产品名称。。。
很抱歉,如果这没有什么意义,我是新手,几年前除了一个介绍类之外,我没有接触过python

您说过您将数据存储在列表中,但是您希望它们与您从HTML中获得的类相关联? 如果我理解正确,请将其存储为字典:

stuff={}

stuff['class name#1']=['data thing#1来自类中的表','data thing#2来自类中的表',…..'data thing#3来自类中的表]
.
.
.
stuff['classname#n']=..

这样,你的“东西”字典将以一种关系的方式存储这些东西,这样你就可以通过有键的方式将这些东西关联起来

这有意义吗?这就是你要问的吗


有关词典的更多信息

向我们展示预期的输出plz。词典听起来不错,我今晚下班后会查看它,不过我希望我丢失的数据能够自动分配到(词典?)中(如果有意义的话)。该站点有许多类,每个类都有一个表,但并非所有类都有相同数量的行,因此我如何告诉Python字典将包含那么多数据?因为到目前为止,我有一个包含页面上所有数据的列表,或者我应该更改代码以尝试在每个表的单独列表中获取数据?如果是这样的话,我怎么才能得到呢?因为表和类都有一个重复项,所以每当您指定时,字典都会向它添加一个键,那么每个键都可以包含一个列表,而python中的列表不需要特定的大小。所以在sudoish代码中:make-dict:dict={}。。。。。。对于每个类,在列表中添加一个键:dict['class name']=[]……对于要添加的表中的每一行,dict['class name']。append(row)。。。。那有用吗?我看看我能做什么!谢谢你的帮助!