转载:http://www.xuebuyuan.com/583071.html

python处理html的table标签

2012年01月06日 ⁄ 综合 ⁄ 共 5279字 ⁄ 字号    ⁄ 评论关闭
 
import sys
import csv
import urllib2 import BeautifulSoup #page = urllib2.urlopen(sys.argv[1]).read()
soup = BeautifulSoup.BeautifulSoup(open(sys.argv[1]).read())
csvout = csv.writer(sys.stdout) for table in soup.findAll('table'):
print "<table border='1'>"
#print '#'
#print '# Table'
#print '# Fields: ' + ','.join([tr.text for tr in table.findAll('th')])
for row in table.findAll('tr'):
print "<tr>"
#csvout.writerow([tr.text for tr in row.findAll('td')])
for tr in row.findAll('td'):
print "<td>"
print tr.text.encode("utf-8")
print "</td>"
print "</tr>"
print "</table>"
break
#!/bin/bash

#process.h

basedir=$(dirname $1)

echo $basedir

#echo \<head\>\<meta http-equiv=\"Content-Type\" content=\"text/html\; charset=UTF-8\" /\>\</head\> >> $basedir/baobei.html

prodname=$(grep -o '<title id="id_title">.*</title>' $1 | cut -d \> -f 2 | cut -d \< -f 1)

prodname=$(echo $prodname | cut -d _ -f 1)

price=$(grep -o '<span class="s1">[0-9]*</span>' $1 | cut -d \> -f 2 | cut -d \< -f 1)

echo \<table\>                > $basedir/baobei.html

echo  \<tr\>                 >> $basedir/baobei.html
echo \<td\>Name\</td\> >> $basedir/baobei.html
echo \<td\>$prodname\</td\> >> $basedir/baobei.html
echo \</tr\> >> $basedir/baobei.html echo \<tr\> >> $basedir/baobei.html
echo \<td\>Price\</td\> >> $basedir/baobei.html
echo \<td\>$price\</td\> >> $basedir/baobei.html
echo \</tr\> >> $basedir/baobei.html python ./printtab.py $1 >> $basedir/baobei.html echo \</table\> >> $basedir/baobei.html imgsrc=$(head -n 1 $basedir/imglist)
if test y$imgsrc = y; then
rm -rf $basedir/baobei.html && exit;
fi
echo \<img src=\'$imgsrc\'/\> >> $basedir/baobei.html cat $basedir/baobei.html | tr -d '\n' | tr -d '"' > $basedir/baobei.html.tmp
mv $basedir/baobei.html.tmp $basedir/baobei.html
#!/bn/bash

#process2.sh

basedir=$(dirname $1)

name=$(grep  -o "<td>Name</td><td>.*</td>" $1   | cut -d \> -f 4 | cut -d \< -f 1 )

if  test "x$name" = "x" ; then
exit ;
fi price=$(grep -o "<td>Price</td><td>.*</td>" $1 | cut -d \> -f 4 | cut -d \< -f 1 ) if test "x$price" = "x" ; then
exit;
fi if test "x$class" = "x"
then
class=$(grep -o "<td>产品类型</td><td>.*</td>" $1 | cut -d \> -f 4 | cut -d \< -f 1 )
fi if test "x$class" = "x"
then
class=$(grep -o "<td>设备类型</td><td>.*</td>" $1 | cut -d \> -f 4 | cut -d \< -f 1 )
fi if test "x$class" = "x"
then
class=$(grep -o "<td>打印针数</td><td>.*</td>" $1 | cut -d \> -f 4 | cut -d \< -f 1 )
fi if test "x$class" = "x"
then
class="条形码打印机"
fi if $( echo $class | grep --quiet '票据' )
then
class="536187477"
elif $( echo $class | grep --quiet '发票' )
then
class="536187477"
elif $( echo $class | grep --quiet '票证' )
then
class="536187477"
elif $( echo $class | grep --quiet '存折' )
then
class="536187477" ##################################################################
elif $( echo $class | grep --quiet '针' )
then
class="536187477" ##################################################################
elif $( echo $class | grep --quiet '灯泡' )
then
class="536187479"
elif $( echo $class | grep --quiet 'UHE' )
then
class="536187479"
elif $( echo $class | grep --quiet 'UHP' )
then
class="536187479"
elif $( echo $class | grep --quiet 'HSCR' )
then
class="536187479" ###############################################################
elif $( echo $class | grep --quiet '条形码打印机' )
then
class="536187480" ##################################################################
elif $( echo $class | grep --quiet '证卡打印' )
then
class="536187483" ##################################################################
elif $( echo $class | grep --quiet '条码' )
then
class="536187481" elif $( echo $class | grep --quiet '扫描' )
then
class="536187481" elif $( echo $class | grep --quiet '阅读' )
then
class="536187481" elif $( echo $class | grep --quiet '采集' )
then
class="536187481" elif $( echo $class | grep --quiet '手持' )
then
class="536187481" elif $( echo $class | grep --quiet '数据终端' )
then
class="536187481" ##################################################################
elif $( echo $class | grep --quiet '激光' )
then
class="536187484" ##################################################################
elif $( echo $class | grep --quiet '喷墨' )
then
class="536187486" ##################################################################
elif $( echo $class | grep --quiet '复印' )
then
class="536187615" ##################################################################
elif $( echo $class | grep --quiet '一体机' )
then
class="536187485" ##################################################################
elif $( echo $class | grep --quiet '硒鼓' )
then
class="536187616" elif $( echo $class | grep --quiet '墨盒' )
then
class="536187616"
else
class="536187616"
fi ################################################################
imagepath=$(find $basedir -type f -iname "*.jpg")
if test "x$imagepath" = "x"; then
exit ;
fi
image=$(md5sum $imagepath | cut -d ' ' -f 1)
cp -rf $imagepath $basedir/../../template/$image.tbi
################################################################
desc=$(cat $1)
################################################################ echo -e \"$name\""\t"110514"\t"\",$class,\""\t"1"\t"\"上海\""\t"\"上海\""\t"\"b\""\t"$price"\t"0.000000"\t"1"\t"7"\t"2"\t"0.000000"\t"0.000000"\t"0.000000"\t""\t""\t"1"\t"1"\t"0"\t"1"\t"1"\t"0"\t"\"2012-10-16 13:09:48\""\t""\t"\"$desc\""\t""\t"\"20000:31140\;20196:3228846\;29969:107401\;30681:32998\;31468:102250\;31479:92188\;3415558:27513\;3415563:21959\;3415571:21959\;3415581:10122\;3415609:22041\;7884463:75957615\;14319244:80897641\;14319250:123483713\;14791484:10285019\;\""\t""\t""\t"0"\t"0"\t"\"2012-10-16 13:37:51\""\t"100"\t""\t"0"\t"\"$image:0:0:\|\;\""\t"\"\""\t"\"\""\t"\",\""\t"\",\""\t"\"\""\t"\"\""\t"0"\t"\"15758222730\""\t"15758222730
 classtable = {
17 "536187477" : "票据打印机" ,
18 "536187478" : "针式打印机" ,
19 "536187479" : "投影灯泡" ,
20 "536187480" : "条形码打印机" ,
21 "536187481" : "条码设备" ,
22 "536187483" : "证卡打印机" ,
23 "536187484" : "激光打印机" ,
24 "536187485" : "多功能一体机" ,
25 "536187486" : "喷墨打印机" ,
26 "536187615" : "复印复合机" ,
27 "536187616" : "硒鼓" ,
28 }

python处理html的table标签的更多相关文章

  1. python 之 前端开发(form标签、单选框、多选框、file上传文件、按钮、label标签、下拉列表、textarea标签、fieldset标签、table标签)

    11.25 form标签 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  2. img、列表和table标签

    一.img图片 <body> <a href="https://www.fmtxt.com"> <img src="images/1.jpg ...

  3. ol,ul,dl,table标签的基本语法

    ol,ul,dl,table标签的基本语法 有序列表: 无序列表:                                  自定义列表: <ol> <ul> < ...

  4. HTML——表格table标签,tr或者td

    表格定义和用法 <tr> 标签定义 HTML 表格中的行. tr 元素包含一个或多个 th 或 td 元素. HTML 与 XHTML 之间的差异 在 HTML 4.01 中,tr 元素的 ...

  5. table标签

    table标签使我们最常用的的标签,在使用table标签时我们要注意一些其属性,早期我们经常使用table标签对其进行页面布局但是现在我们基本不再使用,由此可见table标签也是非常强大的一个工具. ...

  6. dl标签和table标签

    dl标签定义了一个定义列表 <html> <body> <h2>一个定义列表:</h2> <dl>   <dt>计算机</ ...

  7. PHP自学4——通过函数将数组数据输出到html的Table标签中(使用函数的例子)

    这一节其实说实话并没有什么干货,不过为了防止PO主的懒癌的复发,还是坚持放一点东西,即使是内容和长度都令人发指.这一节通过一个函数来实现将数组中的内容输出html的Table标签当中显示. 函数文件— ...

  8. PHP自学3——在html的<table>标签中显示用户提交表单

    为了更好地显示用户提交表单,本节将在上一节的基础上将读取的用户表单显示在html的<table>标签中,这一节将用到和数组有关的知识. 本节代码将从外部文件(.txt文件)中读取信息于指定 ...

  9. display:table标签来自动改变列宽 改变的同时table的整体宽度跟随变化

    发现公司里的所有分页功能都是通过display:talbe来实现的,但是用户最近说要让表格列宽可以拖动:所有我就寻找了好多的办法:网上找了很多的资料,但是都不是我要的效果因为他们都是列宽不改变要不就是 ...

随机推荐

  1. Sublime多行编辑快捷键

    鼠标选中多行,按下 Ctrl Shift L (Command Shift L) 即可同时编辑这些行: 鼠标选中文本,反复按 CTRL D (Command D) 即可继续向下同时选中下一个相同的文本 ...

  2. javascript小技巧(非常全)

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  3. javascript基础07

    javascript基础07 1.节点 元素.childNodes : 属性 只读 属性 子节点列表集合 元素.childNodes 只包含子节点,不包含孙节点 DOM节点的类型有很多种,w3c标准有 ...

  4. PHP中九大缓存技术总结

    PHP缓存包括PHP编译缓存和PHP数据缓存两种.PHP是一种解释型语言,属于边编译边运行的那种.这种运行模式的优点是程序修改很方便,但是运行效率却很低下.PHP编译缓存针对这种情况做改进处理,使得P ...

  5. Codeforces 724 E Goods transportation

    Description 有 \(n\) 个点,每个点有一个入流和出流,每个点与编号比它大的点连边,容量为 \(c\) ,求最大流. Sol DP. 这种特殊的图可以DP,把最大流转化成最小割. 最小割 ...

  6. django初始

    创建django工程 django-admin startproject [工程名称] mysite - mysite # 对整个程序进行配置 - init - settings # 配置文件 - u ...

  7. js本地解析xls文件

    有个插件在这:oss.sheetjs.com 将demo拷贝整理(注意js的齐全)即可. 这里下载:http://download.csdn.net/detail/lion_awake/9326139

  8. PE355

    似乎我和lyx讨论过这题..? LP可解决..(~0.8s)

  9. DOM高级

    表格应用 获取 tBodies, tHead, tFoot, rows, cells 隔行变色 鼠标移入高亮, 添加,删除一行 DOM的方法使用 <!DOCTYPE html PUBLIC &q ...

  10. JSON代码格式化 进行查询筛选

    JSON是前端编程经常用到的格式,对于PHP或者Python,解析JSON都不是什么大事,尤其是PHP的json_encode和json_decode,干的相当的漂亮.Linux下也有处理处理JSON ...