精华内容
下载资源
问答
  • python生成在html中显示的表格可以通过写python脚本制HTML的form,包括HTML的什么的python 有个第三方pyh用来生成HTML,可用一下:from pyh import *page = PyH('This is PyH page')page ...

    用python生成在html中显示的表格

    可以通过写python脚本制HTML的form,包括HTML的什么的

    python 有个第三方pyh用来生成HTML,可用一下:

    from pyh import *

    page = PyH('This is PyH page')

    page << h1(cl='center', 'My big title')

    table1 = page << table(border='1',id='mytable1')

    headtr = table1 << tr(id='headline')

    headtr << td('Head1') << td('Head2')

    tr1 = table1 << tr(id='line1')

    tr1 << td('r1,c1') <

    tr2 = table1 << tr(id='line2')

    tr2 << td('r2,c1') <

    page.printOut()

    python怎么从excel中读取数据?

    ⒈ #import παέτο

    import xlrd

    #Ρύθμισ διαδρομής

    path='C:\\Users\\jyjh\\Desktop\\datap.xlsx'

    #Άνοια χείου

    data=xlrd.open_workbook(path)

    怎么用python将excel数据写入网页中

    # 装 xlrd-0.9.2 和 xlutils-1.7.1 个模

    from xlwt import Workbook, Formula

    import xlrd

    book = Workbook()

    sheet1 = book.add_sheet('Sheet 1')

    sheet1.write(0,0,10)

    sheet1.write(0,1,20)

    sheet1.write(1,0,Formula('A1/B1'))

    sheet2 = book.add_sheet('Sheet 2')

    row = sheet2.row(0)

    row.write(0,Formula('sum(1,2,3)'))

    row.write(1,Formula('SuM(1;2;3)'))

    row.write(2,Formula("$A$1 $B$1*SUM('ShEEt 1'!$A$1:$b$2)"))

    book.save('formula.xls')

    book = xlrd.open_workbook('formula.xls')

    sheet = book.sheets()[0]

    nrows=sheet.nrows

    ncols=sheet.ncols

    for i in range(nrows):

    for j in range(ncols):

    print (sheet.cell(i,j).value)

    python 如何读取 excel 指定单元格内容

    1、首开电脑上编写python的软件。

    2、然后新建py文件,图所示。

    3、接着就是导入xlrd包,读取的函数就在这里面,如下图所示。

    4、然后就是打开想要读取的表格,如下图所示。

    5、接着就是指定要读取一个excel表中的那个表格。

    6、然后就是根据sheet索引获取sheet内容。

    7、最后就是读取一个表格中的行或列的值,就完成了。

    展开全文
  • Python爬取网页表格数据并写入Excel import requests from bs4 import BeautifulSoup import xlwt #请求headers 模拟谷歌浏览器访问 headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) Apple...

                       Python爬取网页表格数据并写入Excel

    import requests
    from bs4 import BeautifulSoup
    import xlwt
    #请求headers 模拟谷歌浏览器访问
    headers = {
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
    }
    def get_data():
        response = requests.get('http://www.hs-bianma.com/hs_chapter_01.htm', headers=headers)
        bs = BeautifulSoup(response.text,'lxml')
    
        # 标题处理
        title = bs.find_all('th')
        data_list_title = [] #定义一个空列表
        for data in title:
            data_list_title.append(data.text.strip()) #获取标签的内容去掉两边空格并添加到列表里
    
        # 内容处理
        content = bs.find_all('td')
        data_list_content = [] #定义一个空列表
        for data in content:
            data_list_content.append(data.text.strip()) #获取标签的内容去掉两边空格并添加到列表里
        #语句featList = [example[i] for example in dataSet]作用为: 将dataSet中的数据按行依次放入example中,然后取得example中的example[i]元素,放入列表featList中
        new_list = [data_list_content[i:i + 16] for i in range(0, len(data_list_content), 16)]
    
        # 存入excel表格
        book = xlwt.Workbook()
        sheet1 = book.add_sheet('sheet1', cell_overwrite_ok=True)
    
        # 标题存入
        heads = data_list_title[:] #将data_list_title第一位到最后一位赋值给heads
        ii = 0
        for head in heads:
            sheet1.write(0, ii, head)
            ii += 1
    
        # 内容录入
        i = 1
        for list in new_list:
            j = 0
            for data in list:
                sheet1.write(i, j, data)
                j += 1
            i += 1
        # 文件保存
        book.save('./data.xls')
    print("全部完成")
    
    #调用
    get_data()
    

     

    展开全文
  • 利用Python爬取网页表格数据并存到excel 1、具体要求: 读取教务系统上自己的成绩单,并保存到本地的excel中 2、技术要求: 利用Selenium+Python获取网页,自动登陆并操作到成绩单页面 通过xlwt模块,将表格保存...

    利用Python爬取网页表格数据并存到excel


    1、具体要求:

    读取教务系统上自己的成绩单,并保存到本地的excel中


    2、技术要求:

    利用Selenium+Python获取网页,自动登陆并操作到成绩单页面

    通过xlwt模块,将表格保存到本地excel

    (其中xlwt模块通过cmd打开命令框,输入pip install xlwt下载)


    3、主要代码:

    #创建工作簿
    wbk = xlwt.Workbook(encoding='utf-8', style_compression=0)
    #创建工作表
    sheet = wbk.add_sheet('sheet 1', cell_overwrite_ok=True)
    #表头(table_top_list包含表头每一列的值)
    table_top_list = driver.find_element_by_xpath("//form[@name='studentForm']/div[3]/fieldset/table/thead/tr").find_elements_by_tag_name('td')
    #写入表头到sheet 1中,第0行第c列
    for c,top in enumerate(table_top_list):
        sheet.write(0, c, top.text)
    
    # 表的内容
    #将表的每一行存在table_tr_list中
    table_tr_list = driver.find_element_by_xpath("//form[@name='studentForm']/div[3]/fieldset/table/tbody").find_elements_by_tag_name('tr')
    for r,tr in enumerate(table_tr_list,1):
        #将表的每一行的每一列内容存在table_td_list中
        table_td_list = tr.find_elements_by_tag_name('td')
        #写入表的内容到sheet 1中,第r行第c列
        for c,td in enumerate(table_td_list):
            sheet.write(r, c, td.text)
    #保存表格到已有的 excel
    wbk.save(r'C:\xxx\test.xls')

    4、全部代码:

    #coding:utf-8
    
    from selenium import webdriver
    import time
    import xlwt
    
    
    driver = webdriver.Chrome()
    driver.get("http://xxxx/")
    time.sleep(2)
    
    
    #登陆研究生系统
    driver.find_element_by_name("userName").send_keys("xxx")
    driver.find_element_by_name("password").send_keys("xxx")
    time.sleep(2)
    driver.find_element_by_xpath("html/body/div[2]/div[1]/form/div/dl/dt[3]/input[3]").click()
    time.sleep(2)
    driver.find_element_by_class_name("img_dl").click()
    
    #跳转到成绩查询按钮的frame
    frame1 = driver.find_element_by_name("leftFrame")
    driver.switch_to.frame(frame1)
    iframe1 = driver.find_element_by_name("zbFrame")
    driver.switch_to.frame(iframe1)
    time.sleep(3)
    #点击成绩查询-学期成绩查询
    driver.find_element_by_xpath("html/body/table/tbody/tr/td/div/div/table[4]/tbody/tr/td/a").click()
    driver.find_element_by_xpath("html/body/table/tbody/tr/td/div/div/div[4]/table/tbody/tr/td/a").click()
    
    #先回到原来的页面
    driver.switch_to.default_content()
    #载跳转到查询按钮所在的frame
    frame2 = driver.find_element_by_name("mainFrame")
    driver.switch_to.frame(frame2)
    #点击查询按钮
    driver.find_element_by_xpath("//button[@class='button2']").click()
    
    #创建工作簿
    wbk = xlwt.Workbook(encoding='utf-8', style_compression=0)
    #创建工作表
    sheet = wbk.add_sheet('sheet 1', cell_overwrite_ok=True)
    
    def save_Data():
        #table_list=[]
        #row_list=[]
        #表头
        table_top_list = driver.find_element_by_xpath("//form[@name='studentForm']/div[3]/fieldset/table/thead/tr").find_elements_by_tag_name('td')
        for c,top in enumerate(table_top_list):
            #row_list.append(top.text)
            sheet.write(0, c, top.text)
        #table_list.append(row_list)
    
        # 表的内容
        #将表的每一行存在table_tr_list中
        table_tr_list = driver.find_element_by_xpath("//form[@name='studentForm']/div[3]/fieldset/table/tbody").find_elements_by_tag_name('tr')
        #每行输出到row_list中,将所有的row_list输入到table_list中
        for r,tr in enumerate(table_tr_list,1):
            #将表的每一行的每一列内容存在table_td_list中
            table_td_list = tr.find_elements_by_tag_name('td')
            #将行列的内容加入到table_list中
            for c,td in enumerate(table_td_list):
                #row_list.append(td.text)
                sheet.write(r, c, td.text)
                #print td.text
            #table_list.append(row_list)
        #最后返回table_list
        #return table_list
    
    save_Data()
    #保存该文件,文件必须存在
    wbk.save(r'C:\xxx\test.xls')
    
    #先回到原来的页面
    driver.switch_to.default_content()
    print ('done')

    5、遇到的问题:

    ①本来准备将table的内容保存到table_list[]中,table_list里面再是row_list[],这样的方式得到的tabel_list就能保存所有的table的值,但是如何提取到excel的表格中,就成了问题,因为excel是用,sheet.write(r,c,''),这种行列的形式加入数据

    所以就直接读取table数据的时候将数据直接写到excel中。

    ②用for循环,不知道循环到哪一个的问题

    通过enumerate进行遍历以及获取遍历时的计数,默认从0开始计数

    下面是摘抄的enumerate的用法:http://blog.csdn.net/churximi/article/details/51648388

    • 如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写:
    list1 = ["这", "是", "一个", "测试"]
    for i in range (len(list1)):
        print i ,list1[i]
    • 1
    • 2
    • 3
    • 上述方法有些累赘,利用enumerate()会更加直接和优美:
    list1 = ["这", "是", "一个", "测试"]
    for index, item in enumerate(list1):
        print index, item
    >>>
    012 一个
    3 测试
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • enumerate还可以接收第二个参数,用于指定索引起始值,如:
    list1 = ["这", "是", "一个", "测试"]
    for index, item in enumerate(list1, 1):
        print index, item
    >>>
    123 一个
    4 测试
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    补充

    如果要统计文件的行数,可以这样写:

    count = len(open(filepath, 'r').readlines())
    • 1

    这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。

    可以利用enumerate():

    count = 0
    for index, line in enumerate(open(filepath,'r')): 
        count += 1

    6、关于操作excel的文章(python第三方库——xlrd和xlwt操作Excel文件学习

    http://blog.csdn.net/wangkai_123456/article/details/50457284





    展开全文
  • 开始进公司实习的一个任务是整理一个网页页面上二级链接的内容整理到EXCEL中,这项工作把我头都搞大了,整理了好几天,实习生就是端...要爬取初始网页:http://www.zizzs.com/zt/zzzsjz2017/###任务:将招生简章中20...

    开始进公司实习的一个任务是整理一个网页页面上二级链接的内容整理到EXCEL中,这项工作把我头都搞大了,整理了好几天,实习生就是端茶送水的。前段时间学了爬虫,于是我想能不能用python写一个爬虫一个个页面抓取然后自动存到EXCEL中。今天完成了第一个页面的处理,抓取到了所有的二级链接。

    要爬取初始网页:http://www.zizzs.com/zt/zzzsjz2017/###

    任务:将招生简章中2017对应的二级页面的招生计划整理到EXCEL

    初始目标:爬取http://www.zizzs.com/zt/zzzsjz2017/### 中招生简章2017年对应的二级链接,爬取到二级链接之后再接着往下爬取二级页面的表格,并存到EXCEL中.

    我打算用BeautifulSoup来解析网页页面.

    BeautifulSoup是Python中的一个HTML/XML解析器,通过定位HTML标签来格式化和组织复杂网络. 它可以很好的处理不规范标记并生成剖析树(parse tree),提供简单又常用的导航(navigating),搜索以及修改剖析树的操作.

    中文文档: https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/

    首先看下我要爬取的网页源码:

    953691-20171027142508586-1316439704.png

    可以看见我要爬取的表格在图中红框圈住的页面中. 可以用BeautifulSoup的find()方法使用标签和属性定位这个表格.

    找到表格所在位置之后可以看到我要找的页面都在class="colspan w9 ds2017" 中, 借用findAll()定位这个内容.

    但是print出来是整个内容,而我要提取的是href中的页面链接.

    953691-20171027143113430-436516339.png

    对于这个问题我使用python的正则表达式re.findall()方法来提取链接.

    使用方法: re.findall(pattern, string, flags=0),第一个参数是你要查找的字符串模式可以用正则表达式设计,第二是整个字符串

    要了解python字符串可以看看这篇博文.

    可以观察到我要查找的字符串有些是以空格开头的,有些不是, 我的正则表达式为:

    953691-20171027143720648-98056052.png

    最后成功抓取到自己想要的链接:

    953691-20171027144015930-433236123.png

    后面就是用这些链接去抓取表格内容的各个学校的招生信息了。

    贴上源码:

    #_*_ coding: UTF-8 _*_

    from urllib importrequestfrom bs4 importBeautifulSoupimportre

    url= 'http://www.zizzs.com/zt/zzzsjz2017/###'

    # 这一段是将python urllib伪装成chrome 浏览器,防止被服务器拒绝,原因在我另一篇文章python文章总结里面

    defgetHTML(url):

    headers= {'User-Agent':'User-Agent:Mozilla/5.0(Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'}

    req= request.Request(url,headers =headers)returnrequest.urlopen(req)

    html=getHTML(url)#得到BeautifulSoup对象

    bsObj = BeautifulSoup(html,'lxml')

    foundLinks=[]#成功找到初始页面的所有二级链接

    substr = re.compile("(\s)*(http:\/\/www\.zizzs\.com\/c\/201702\/[0-9]+\.html)")for link in bsObj.find("div",{"id":"tab2_content"}).findAll("",{"class":"colspan w9 ds2017"}):#print(str(link))

    if len(re.findall(substr,str(link))) !=0:

    foundLinks.append(re.findall(substr,str(link))[0][1])print(foundLinks)

    整个程序虽然比较简单,但是自己对BeautifulSoup和正则表达式还不是很熟悉,还是调试了很久.

    展开全文
  • 该网站数据存在table标签,直接用requests,需要结合bs4解析正则/xpath/lxml等,没有几行代码是搞不定的。...原网页结构如下:python代码如下:import pandas as pdurl='http://www.kuaidaili.com/free/'df=pd.read_...
  • python爬取网页表格数据,供大家参考,具体内容如下 from bs4 import BeautifulSoup import requests import csv import bs4 #检查url地址 def check_link(url): try: r = requests.get(url) r.raise_for_...
  • 安装环境:pip install requestspip install lxmlpip install fire使用命令:python fofa.py -s=title="你的关键字" -o="结果输出文件" -c="你的cookie"代码如下:import requests,time,base64,firefrom lxml import...
  • 本篇文章给大家带来的内容是关于Python如何实现从PDF文件中爬取表格数据(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。本文将展示一个稍微不一样点的爬虫。以往我们的爬虫都是从...
  • 原标题:数据科学必备技能:用 Python 爬取网页我作为数据科学家的第一个任务,就是做网页爬取。那时候,我对使用代码从网站上获取数据这项技术完全一无所知,它偏偏又是最有逻辑性并且最容易获得的数据来源。在几次...
  • 0.1.参考表格标签表格描述定义表格的表头。...表格元素定位参看网页源代码并没有 thead 和 tbody。。。List of text editorsNameCreatorFirst public releaseLatest stable versionLatest Release DateProgr...
  • 这篇不考虑复杂情况,放一个读取简单网页数据的小例子:目标数据将ittf网站上这个页面上所有这些选手的超链接保存下来。数据请求真的很喜欢符合人类思维的库,比如requests,如果是要直接拿网页文本,一句话搞定:...
  • 主要介绍了Python基于pandas获取网页表格数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • python爬取网页表格内容, 并存入csv文件, 网页地址:http://app.finance.ifeng.com/data/stock/yjyg.php?symbol=000001
  • Python爬取网页数据并导入表格

    千次阅读 2018-10-30 13:47:00
    我想将http://wsb.wuhan.gov.cn/html/friendly/201602/t20160203_45633.shtml这个网页里的表格数据python爬取出来,并导入CSV表格文件,但是总是出错,求大神教我,代码如下 import requests import time import...
  • python + pandas爬取网页表格数据

    万次阅读 多人点赞 2019-01-30 11:54:55
    这里以工标网标准数据为例 ... 先请求页面,xpath定位表格区域 res = requests.get('http://www.csres.com/notice/50655.html') res_elements = etree.HTML(res.text) table = res_elements.xpat...
  • table型的表格可以直接利用pandas的read_html一句话抓取,而不需依赖requests等爬虫库尝试爬取A股上市公司数据,参照了上面的文章,并做了一些改进。针对原文pandas爬取的代码有几个问题:1、默认保留了所有页的标题...
  • 简介本文将展示一个稍微不一样点的爬虫...本文将展示如何利用Python的camelot模块从PDF文件中爬取表格数据。在我们的日常生活和工作中,PDF文件无疑是最常用的文件格式之一,小到教材、课件,大到合同、规划书,我们...
  • 都说python爬网页数据方便,我们今天就来试试,python爬取数据到底有多方便简介爬取数据,基本都是通过网页的url得到这个网页的源代码,根据源代码筛选出需要的信息准备ide:pycharm库:requests、lxml 注:requests...
  • 但是在爬取过程中爬取后的数据输出导表格后发现表头全是英文,如何匹配对应中文?下面是部分截图: 其中一个表格“检查” html部分: <p style="text-align:center"><img alt="" height=...
  • 爬取网页表格数据,较易容想到的常规方式是通过requests请求以及lxml解析xpath定位获取元素,此外还可以通过pandas库的**read_html**直接获取表格数据,在此对比两种方式的时间效率。
  • 来自公众号:优达学城Udacity作者:Kerry Parker编译:欧剃作为数据科学家的第一个任务,就是做网页爬取。那时候,我对使用代码从网站上获取数据这项技术完全一无所知,它偏偏又是最有逻辑性并且最容易获得的数据...
  • 分析要爬取的内容的网页结构:demo.py:import requests #requests是HTTP库import refrom openpyxl import workbook # 写入Excel表所用from openpyxl import load_workbook # 读取Excel表所用from bs4 import ...
  • 爬虫之爬取网页表格数据(三) 爬虫之爬取网页表格数据(二)只是爬取到一条数据,如果想爬取多条数据该怎么做呢? 只需要修改spider下example.py文件的代码即可 如下:` def parse(self, response): # housename =...
  • 本文使用自己创建的网页进行模拟和演示,在爬取真实网页时,分析网页源代码然后修改代码中的正则表达式即可。假设某网页源代码为:在Hbuilder中单击菜单“运行”,选择使用Google Chr...
  • 我使用python爬取网页表格数据的时候使用 request.get获取不到页面内容。 爬取网址为:http://data.10jqka.com.cn/rank/cxg/board/4/field/stockcode/order/desc/page/2/ajax/1/free/1/ 这是Elements ![图片说明]...
  • 请教大神,如何用python爬取如下网页内的表格数据 最近在学习python如何爬取网页数据表格,以下面链接为例,想爬取该网站内100页的表格数据。 已经解决了网页带cookie登陆的问题 网址 ... ...
  • 爬虫之爬取网页表格数据 ###环境:Anaconda2虚拟环境 步骤1 打开Anaconda Prompt命令行窗口,输入conda activate tfenv激活虚拟环境,进入所要创建爬虫项目的文件夹,比如说我在F:\hadoop\python-project目录下...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,542
精华内容 3,016
关键字:

python爬取网页表格数据

python 订阅