Python提取字符判断

code048 2011-10-13 05:16:43
from urllib import urlopen
import re
doc = urlopen("http://www.ruzhibao.com/1.html").read()

riframe = re.compile(r'(.*?)</IFRAME>')

webifm = riframe.findall(doc)


tiqu = re.compile(r'(src=\"[^^]*?)\".')
websrc = tiqu.findall(webifm[1])

print websrc

rwh = re.compile("""width="(\d*)" height="(\d*)"></IFRAME>""")
l = p.search(webifm[1])

print l.group(1)
print l.group(2)


开始是抓取整个网页源码保存到变量里面。然后取出iframe标签。然后在从标签里面取出src
下面那个是从标签里面取出width height.
但是程序报错 了。那位大大帮帮忙,然后我想用取出的这两个变量和0做比较,如果都是0的话就返回一个信息输出。方便的话帮帮加一个循环,比较所有<iframe>标签中的高和宽。谢谢大家了啊,初学python。
...全文
91 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
panghuhu250 2011-10-14
  • 打赏
  • 举报
回复
http://www.pythonregex.com/
code048 2011-10-13
  • 打赏
  • 举报
回复
非常感谢你能帮我回答问题,如果方便的话,帮我解决一下,我苦恼了一整天了。
code048 2011-10-13
  • 打赏
  • 举报
回复
import re
p = re.compile("""width="(\d*)" height="(\d*)"></IFRAME>""")
webstr = """<IFRAME ID="eWebEditor1" src="../ewebeditor7/ewebeditor.htm?

id=content1&style=standard600&skin=office2003" frameborder="0" scrolling="no" width="600"

height="350"></IFRAME>"""
r = p.search(webstr)
print r.group()
print r.group(1)
print r.group(2)
这个是我朋友帮我写的一个参考,但是他是对的。并没有报错的啊。

from urllib import urlopen
import re
doc = urlopen("http://www.ruzhibao.com/1.html").read()

riframe = re.compile(r'(<.*?)</IFRAME>')

webifm = riframe.findall(doc)

for i in webifm:
print i

tiqu = re.compile(r'(src=\"[^^]*?)\".')

for k in webifm:
websrc = tiqu.findall(k)
print websrc

rwh = re.compile("""width="(\d*)" height="(\d*)"></IFRAME>""")
for j in webifm:
l = rwh.search(j)
print l.group()
print l.group(1)
print l.group(2)
这个是我的。2L那个最后变量用的又问题,这个依然还是报错。
iambic 2011-10-13
  • 打赏
  • 举报
回复
这个错误的意思是l是None,也就是rwh.search返回的结果是None,也就是你写的正则表达式没有被匹配。
正则表达式要用r'...',没加r的基本都是错的,或者即将是错的。
code048 2011-10-13
  • 打赏
  • 举报
回复
from urllib import urlopen
import re
doc = urlopen("http://www.ruzhibao.com/1.html").read()

riframe = re.compile(r'(<.*?)</IFRAME>')

webifm = riframe.findall(doc)

for i in webifm:
print i

tiqu = re.compile(r'(src=\"[^^]*?)\".')
websrc = tiqu.findall(webifm[1])

print websrc

rwh = re.compile("""width="(\d*)" height="(\d*)"></IFRAME>""")
for j in webifm:
l = rwh.search(i)
print l.group()
print l.group(1)
print l.group(2)
程序我又修改了下。但是还是有错。错误信息是
Traceback (most recent call last):
File "1.txt", line 20, in <module>
print l.group()
AttributeError: 'NoneType' object has no attribute 'group'
大家帮帮忙,谢谢了
iambic 2011-10-13
  • 打赏
  • 举报
回复
贴完整出错信息。

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧