小编Ale*_*x A的帖子

如何打印Python类?

我有一个包含几个函数的类(其中大部分包含解析smth的代码,获取所有必要的信息并打印出来).我正在尝试打印一个班级,但我得到了smth.喜欢<_ main _.TestClass实例,位于0x0000000003650888>.代码示例:

from lxml import html
import urllib2
url = 'someurl.com'


class TestClass:

    def testFun(self):
        f = urllib2.urlopen(url).read()
        #some code

        print 'Value for ' +url+ ':', SomeVariable

    def testFun2(self):
        f2 = urllib2.urlopen(url).read()
        #some code

        print 'Value2 for ' +url+ ':', SomeVariable2

test = TestClass()
print test
Run Code Online (Sandbox Code Playgroud)

当我在课外打印功能时 - 一切都好.我做错了什么,怎么打印课?

谢谢!

python class

5
推荐指数
1
解决办法
461
查看次数

如何将输出转换为列表来计算它的数量?

我编写了一个脚本来解析网页并获取链接数量('a'标签):

import urllib
import lxml.html
connection = urllib.urlopen('http://test.com')
dom =  lxml.html.fromstring(connection.read())
for link in dom.xpath('//a/@href'):
    print link
Run Code Online (Sandbox Code Playgroud)

脚本的输出:

./01.html
./52.html
./801.html
http://www.blablabla.com/1.html
#top
Run Code Online (Sandbox Code Playgroud)

如何将其转换为列表来计算链接数量?我使用link.split()但它得到了我:

['./01.html']
['./52.html']
['./801.html']
['http://www.blablabla.com/1.html']
['#top']
Run Code Online (Sandbox Code Playgroud)

但我想得到:

[./01.html, ./52.html, ./801.html, http://www.blablabla.com/1.html, #top]

谢谢!

python list

2
推荐指数
1
解决办法
78
查看次数

如何使用regexp + Python从XML获取指定标记属性的值?

我有一个解析一些xml的脚本.XML包含:

<SD TITLE="A" FLAGS="" HOST="9511.com">
<TITLE TEXT="9511 domain"/>
<ADDR STREET="Pmb#400, San Pablo Ave" CITY="Berkeley" STATE="CA" COUNTRY="US"/>
<CREATED DATE="13-Oct-1990" DAY="13" MONTH="10" YEAR="1990"/>
<OWNER NAME="9511.Org Domain Name Proxy Agents"/>
<EMAIL ADDR="proxy@9511.org"/><LANG LEX="en" CODE="us-ascii"/>
<LINKSIN NUM="75"/><SPEED TEXT="3158" PCT="17"/>
<CHILD SRATING="0"/>
</SD>
<SD>
<POPULARITY URL="9511.com/" TEXT="1417678" SOURCE="panel"/>
</SD>
Run Code Online (Sandbox Code Playgroud)

如何获取标签的'TEXT'属性值(在我的情况下为1417678)?我正在使用regexp + Python.正则表达式字符串:

my_value = re.findall("POPULARITY[^\d]*(\d+)", xml)
Run Code Online (Sandbox Code Playgroud)

它给我'9511'但我需要'1417678'.

python regex xml-parsing python-2.7

-3
推荐指数
1
解决办法
3576
查看次数

标签 统计

python ×3

class ×1

list ×1

python-2.7 ×1

regex ×1

xml-parsing ×1