python的re.findall匹配中文出现问题

时间:2022-03-30 22:33:11
python的re.findall匹配中文出现问题

匹配一个网页里面的一些内容 但出现这种问题 初学python 麻烦指教一下

还有一个问题 然后我匹配出来是一个列表  如何去除每个元素的中指定的字符

如['aaaaaex' ,'vvvvvvvvvvvvex','sssssssssssex'] 如何去除每个元素的'ex'。。谢谢

18 个解决方案

#1


列表形式里 中文是以两个字节编码的形式出现的
所以你打印列表是显示这样的值
你可以尝试遍历列表 用print输出 就可以看到中文了
去掉ex的方法很多 比如可以调用replace()  把‘ex’换成‘’空字符串

#2




python的re.findall匹配中文出现问题

想请问下  为什么在线正则测试就匹配的出来 而python则取不出来  

正则为:re.match(r"margin:0px 0;'>\r\n                (.*?)</div>",content)

以下为content内容

<div>
                        <div class="c-content">
                                            <div class="c-abstract" style='font-family:Arial,SimSun,sans-serif;font-size:13px;color:#000000;
                margin:0px 0;'>
                6.*消防队扑救火灾, ( A )<em>向发生火灾的单位</em>、<em>个人收取费用</em>。 A.不得 B.可以 C.按照一定标准 7.使用然气灶具时,( B )。 ...            </div>

#3




python的re.findall匹配中文出现问题

想请问下  为什么在线正则测试就匹配的出来 而python则取不出来  

正则为:re.match(r"margin:0px 0;'>\r\n                (.*?)</div>",content)

以下为content内容

<div>
                        <div class="c-content">
                                            <div class="c-abstract" style='font-family:Arial,SimSun,sans-serif;font-size:13px;color:#000000;
                margin:0px 0;'>
                6.*消防队扑救火灾, ( A )<em>向发生火灾的单位</em>、<em>个人收取费用</em>。 A.不得 B.可以 C.按照一定标准 7.使用然气灶具时,( B )。 ...            </div>

#4


re.search(r"margin:0px 0;'>\s+(.*?)</div>",


解析html最好用lxml或者beautifulsoup,别自己用正则去匹配

#5


谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'

#6


引用 5 楼 diovid 的回复:
谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'


在content = ...的前后输出log,看一下是不是卡在根据url取网页这一步了。还有就是list这样的name不要覆盖掉,变量不要用这种名字

#7


引用 6 楼 pcboyxhy 的回复:
Quote: 引用 5 楼 diovid 的回复:

谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'


在content = ...的前后输出log,看一下是不是卡在根据url取网页这一步了。还有就是list这样的name不要覆盖掉,变量不要用这种名字
前面那个没学到。。list改了还是那样 就两次可以正常输出结果 第三次就没反应 可以给个联系方式吗?

#8


 
print "AAAA"
req =  urllib.urlopen(url)
print "BBBB"
content = req.read()
print "CCCC"


改成这样,看看是哪一步卡住了

#9


引用 8 楼 pcboyxhy 的回复:
 
print "AAAA"
req =  urllib.urlopen(url)
print "BBBB"
content = req.read()
print "CCCC"


改成这样,看看是哪一步卡住了
输出BBB就卡住了 这是为什么呢 我直接在网页访问多次也没不会出现什么异常呀 。

#10


content = req.read()
req.close()


改成这样呢

#11


引用 10 楼 pcboyxhy 的回复:
content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。

#12


引用 11 楼 diovid 的回复:
Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取

#13


引用 12 楼 pcboyxhy 的回复:
Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 

#14


引用 13 楼 diovid 的回复:
Quote: 引用 12 楼 pcboyxhy 的回复:

Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 


把抓取部分的代码抠出贴上来

#15


引用 14 楼 pcboyxhy 的回复:
Quote: 引用 13 楼 diovid 的回复:

Quote: 引用 12 楼 pcboyxhy 的回复:

Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 


把抓取部分的代码抠出贴上来
    a=raw_input('   搜索:')
    print '\n'
    url=r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
    req = urllib2.urlopen(url)

#16


import datetime
import time
import urllib

while True:
    for a in ['飞机', '火车', '汽车', '轮船']:
        url = r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
        req = urllib.urlopen(url)
        print datetime.datetime.now(), a, len(req.read())
        req.close()


2015-12-25 10:16:22.498518 飞机 38770
2015-12-25 10:16:22.754490 火车 39765
2015-12-25 10:16:23.016036 汽车 39371
2015-12-25 10:16:23.260760 轮船 38874
2015-12-25 10:16:23.498307 飞机 38770
2015-12-25 10:16:23.765754 火车 39765
2015-12-25 10:16:24.050302 汽车 39371
2015-12-25 10:16:24.328333 轮船 38874
2015-12-25 10:16:24.583839 飞机 38770
2015-12-25 10:16:24.882681 火车 39765
2015-12-25 10:16:25.180508 汽车 39371
2015-12-25 10:16:25.496497 轮船 38874
2015-12-25 10:16:25.771734 飞机 38770
2015-12-25 10:16:26.001684 火车 39765
2015-12-25 10:16:26.235687 汽车 39371
2015-12-25 10:16:26.469926 轮船 38874
2015-12-25 10:16:26.754045 飞机 38770
2015-12-25 10:16:27.160544 火车 39765
2015-12-25 10:16:27.399948 汽车 39371
2015-12-25 10:16:27.656756 轮船 38874
2015-12-25 10:16:27.897737 飞机 38770
2015-12-25 10:16:28.163222 火车 39765
2015-12-25 10:16:28.445390 汽车 39371
2015-12-25 10:16:28.676750 轮船 38874
2015-12-25 10:16:28.914525 飞机 38770
2015-12-25 10:16:29.180840 火车 39765
2015-12-25 10:16:29.420131 汽车 39371
2015-12-25 10:16:29.726095 轮船 38874
2015-12-25 10:16:29.967524 飞机 38770
2015-12-25 10:16:30.205105 火车 39765
2015-12-25 10:16:30.507945 汽车 39371
2015-12-25 10:16:30.822356 轮船 38874
2015-12-25 10:16:31.114813 飞机 38770
2015-12-25 10:16:31.423173 火车 39765
2015-12-25 10:16:31.713391 汽车 39371
2015-12-25 10:16:32.008701 轮船 38874
2015-12-25 10:16:32.275053 飞机 38770
2015-12-25 10:16:32.521600 火车 39765
2015-12-25 10:16:32.798019 汽车 39371
2015-12-25 10:16:33.099540 轮船 38874
2015-12-25 10:16:33.362301 飞机 38770
2015-12-25 10:16:33.610782 火车 39765
2015-12-25 10:16:33.904479 汽车 39371
2015-12-25 10:16:34.184339 轮船 38874
2015-12-25 10:16:34.422873 飞机 38770
2015-12-25 10:16:34.714822 火车 39765
2015-12-25 10:16:34.986098 汽车 39371
2015-12-25 10:16:35.228974 轮船 38874
2015-12-25 10:16:35.480587 飞机 38770
2015-12-25 10:16:35.720192 火车 39765
2015-12-25 10:16:36.017358 汽车 39371
2015-12-25 10:16:36.314360 轮船 38874
2015-12-25 10:16:36.553009 飞机 38770
2015-12-25 10:16:36.800480 火车 39765

#17


引用 16 楼 pcboyxhy 的回复:
import datetime
import time
import urllib

while True:
    for a in ['飞机', '火车', '汽车', '轮船']:
        url = r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
        req = urllib.urlopen(url)
        print datetime.datetime.now(), a, len(req.read())
        req.close()


2015-12-25 10:16:22.498518 飞机 38770
2015-12-25 10:16:22.754490 火车 39765
2015-12-25 10:16:23.016036 汽车 39371
2015-12-25 10:16:23.260760 轮船 38874
2015-12-25 10:16:23.498307 飞机 38770
2015-12-25 10:16:23.765754 火车 39765
2015-12-25 10:16:24.050302 汽车 39371
2015-12-25 10:16:24.328333 轮船 38874
2015-12-25 10:16:24.583839 飞机 38770
2015-12-25 10:16:24.882681 火车 39765
2015-12-25 10:16:25.180508 汽车 39371
2015-12-25 10:16:25.496497 轮船 38874
2015-12-25 10:16:25.771734 飞机 38770
2015-12-25 10:16:26.001684 火车 39765
2015-12-25 10:16:26.235687 汽车 39371
2015-12-25 10:16:26.469926 轮船 38874
2015-12-25 10:16:26.754045 飞机 38770
2015-12-25 10:16:27.160544 火车 39765
2015-12-25 10:16:27.399948 汽车 39371
2015-12-25 10:16:27.656756 轮船 38874
2015-12-25 10:16:27.897737 飞机 38770
2015-12-25 10:16:28.163222 火车 39765
2015-12-25 10:16:28.445390 汽车 39371
2015-12-25 10:16:28.676750 轮船 38874
2015-12-25 10:16:28.914525 飞机 38770
2015-12-25 10:16:29.180840 火车 39765
2015-12-25 10:16:29.420131 汽车 39371
2015-12-25 10:16:29.726095 轮船 38874
2015-12-25 10:16:29.967524 飞机 38770
2015-12-25 10:16:30.205105 火车 39765
2015-12-25 10:16:30.507945 汽车 39371
2015-12-25 10:16:30.822356 轮船 38874
2015-12-25 10:16:31.114813 飞机 38770
2015-12-25 10:16:31.423173 火车 39765
2015-12-25 10:16:31.713391 汽车 39371
2015-12-25 10:16:32.008701 轮船 38874
2015-12-25 10:16:32.275053 飞机 38770
2015-12-25 10:16:32.521600 火车 39765
2015-12-25 10:16:32.798019 汽车 39371
2015-12-25 10:16:33.099540 轮船 38874
2015-12-25 10:16:33.362301 飞机 38770
2015-12-25 10:16:33.610782 火车 39765
2015-12-25 10:16:33.904479 汽车 39371
2015-12-25 10:16:34.184339 轮船 38874
2015-12-25 10:16:34.422873 飞机 38770
2015-12-25 10:16:34.714822 火车 39765
2015-12-25 10:16:34.986098 汽车 39371
2015-12-25 10:16:35.228974 轮船 38874
2015-12-25 10:16:35.480587 飞机 38770
2015-12-25 10:16:35.720192 火车 39765
2015-12-25 10:16:36.017358 汽车 39371
2015-12-25 10:16:36.314360 轮船 38874
2015-12-25 10:16:36.553009 飞机 38770
2015-12-25 10:16:36.800480 火车 39765
我用你的代码在我电脑也会中段 
>>> 
2015-12-25 10:32:22.407000 飞机 38766
2015-12-25 10:32:22.879000 火车


请问这是电脑哪里出问题了 应该不是代码问题了。

#18


fileO = open("/Users/potter/PycharmProjects/searchString/sp/123.txt","r")

all_utf = fileO.read().decode("utf-8")

# print all_text
# print all_utf
names = re.findall(ur'@"(\w*[\u4e00-\u9fa5]*)"',all_utf, re.I)

#1


列表形式里 中文是以两个字节编码的形式出现的
所以你打印列表是显示这样的值
你可以尝试遍历列表 用print输出 就可以看到中文了
去掉ex的方法很多 比如可以调用replace()  把‘ex’换成‘’空字符串

#2




python的re.findall匹配中文出现问题

想请问下  为什么在线正则测试就匹配的出来 而python则取不出来  

正则为:re.match(r"margin:0px 0;'>\r\n                (.*?)</div>",content)

以下为content内容

<div>
                        <div class="c-content">
                                            <div class="c-abstract" style='font-family:Arial,SimSun,sans-serif;font-size:13px;color:#000000;
                margin:0px 0;'>
                6.*消防队扑救火灾, ( A )<em>向发生火灾的单位</em>、<em>个人收取费用</em>。 A.不得 B.可以 C.按照一定标准 7.使用然气灶具时,( B )。 ...            </div>

#3




python的re.findall匹配中文出现问题

想请问下  为什么在线正则测试就匹配的出来 而python则取不出来  

正则为:re.match(r"margin:0px 0;'>\r\n                (.*?)</div>",content)

以下为content内容

<div>
                        <div class="c-content">
                                            <div class="c-abstract" style='font-family:Arial,SimSun,sans-serif;font-size:13px;color:#000000;
                margin:0px 0;'>
                6.*消防队扑救火灾, ( A )<em>向发生火灾的单位</em>、<em>个人收取费用</em>。 A.不得 B.可以 C.按照一定标准 7.使用然气灶具时,( B )。 ...            </div>

#4


re.search(r"margin:0px 0;'>\s+(.*?)</div>",


解析html最好用lxml或者beautifulsoup,别自己用正则去匹配

#5


谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'

#6


引用 5 楼 diovid 的回复:
谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'


在content = ...的前后输出log,看一下是不是卡在根据url取网页这一步了。还有就是list这样的name不要覆盖掉,变量不要用这种名字

#7


引用 6 楼 pcboyxhy 的回复:
Quote: 引用 5 楼 diovid 的回复:

谢谢你的回复  打扰下大神 还有个问题 

为什么软件运行的第一次 搜索速度很快 而且能匹配出来 

因为我写了while:True

但是第二次或者后面的时候基本我输入东西后 他就不动了 后面都不执行了  请问是我哪里出问题了。

url没问题 然后正则也没问题。

while True:
    a=raw_input('   搜索:')
    print '\n'
    url=r'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
    
    content = urllib.urlopen(url).read()
    
    list = re.findall(r"margin:0px 0;'>\s+(.*?)</div>",content)
    for i in range(len(list)):
        list[i]=list[i].replace(r'</em>',"").replace(r'<em>',"").replace(r'...',"")
        print list[i],'\n'
    print '   ==================================结束==================================\n'


在content = ...的前后输出log,看一下是不是卡在根据url取网页这一步了。还有就是list这样的name不要覆盖掉,变量不要用这种名字
前面那个没学到。。list改了还是那样 就两次可以正常输出结果 第三次就没反应 可以给个联系方式吗?

#8


 
print "AAAA"
req =  urllib.urlopen(url)
print "BBBB"
content = req.read()
print "CCCC"


改成这样,看看是哪一步卡住了

#9


引用 8 楼 pcboyxhy 的回复:
 
print "AAAA"
req =  urllib.urlopen(url)
print "BBBB"
content = req.read()
print "CCCC"


改成这样,看看是哪一步卡住了
输出BBB就卡住了 这是为什么呢 我直接在网页访问多次也没不会出现什么异常呀 。

#10


content = req.read()
req.close()


改成这样呢

#11


引用 10 楼 pcboyxhy 的回复:
content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。

#12


引用 11 楼 diovid 的回复:
Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取

#13


引用 12 楼 pcboyxhy 的回复:
Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 

#14


引用 13 楼 diovid 的回复:
Quote: 引用 12 楼 pcboyxhy 的回复:

Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 


把抓取部分的代码抠出贴上来

#15


引用 14 楼 pcboyxhy 的回复:
Quote: 引用 13 楼 diovid 的回复:

Quote: 引用 12 楼 pcboyxhy 的回复:

Quote: 引用 11 楼 diovid 的回复:

Quote: 引用 10 楼 pcboyxhy 的回复:

content = req.read()
req.close()


改成这样呢
还是不可以哦 测试了几次都是第二次搜索就出不来了。 urllib改成urllib2 就可以多几次 然后后面也一样卡住。。。


这跟被抓取的网站的限制策略有关,有的网站甚至会分析用户行为,屏蔽掉抓取
但是我手动直接访问很多次同样的Url 也不会出现什么异常呀 = 


把抓取部分的代码抠出贴上来
    a=raw_input('   搜索:')
    print '\n'
    url=r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
    req = urllib2.urlopen(url)

#16


import datetime
import time
import urllib

while True:
    for a in ['飞机', '火车', '汽车', '轮船']:
        url = r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
        req = urllib.urlopen(url)
        print datetime.datetime.now(), a, len(req.read())
        req.close()


2015-12-25 10:16:22.498518 飞机 38770
2015-12-25 10:16:22.754490 火车 39765
2015-12-25 10:16:23.016036 汽车 39371
2015-12-25 10:16:23.260760 轮船 38874
2015-12-25 10:16:23.498307 飞机 38770
2015-12-25 10:16:23.765754 火车 39765
2015-12-25 10:16:24.050302 汽车 39371
2015-12-25 10:16:24.328333 轮船 38874
2015-12-25 10:16:24.583839 飞机 38770
2015-12-25 10:16:24.882681 火车 39765
2015-12-25 10:16:25.180508 汽车 39371
2015-12-25 10:16:25.496497 轮船 38874
2015-12-25 10:16:25.771734 飞机 38770
2015-12-25 10:16:26.001684 火车 39765
2015-12-25 10:16:26.235687 汽车 39371
2015-12-25 10:16:26.469926 轮船 38874
2015-12-25 10:16:26.754045 飞机 38770
2015-12-25 10:16:27.160544 火车 39765
2015-12-25 10:16:27.399948 汽车 39371
2015-12-25 10:16:27.656756 轮船 38874
2015-12-25 10:16:27.897737 飞机 38770
2015-12-25 10:16:28.163222 火车 39765
2015-12-25 10:16:28.445390 汽车 39371
2015-12-25 10:16:28.676750 轮船 38874
2015-12-25 10:16:28.914525 飞机 38770
2015-12-25 10:16:29.180840 火车 39765
2015-12-25 10:16:29.420131 汽车 39371
2015-12-25 10:16:29.726095 轮船 38874
2015-12-25 10:16:29.967524 飞机 38770
2015-12-25 10:16:30.205105 火车 39765
2015-12-25 10:16:30.507945 汽车 39371
2015-12-25 10:16:30.822356 轮船 38874
2015-12-25 10:16:31.114813 飞机 38770
2015-12-25 10:16:31.423173 火车 39765
2015-12-25 10:16:31.713391 汽车 39371
2015-12-25 10:16:32.008701 轮船 38874
2015-12-25 10:16:32.275053 飞机 38770
2015-12-25 10:16:32.521600 火车 39765
2015-12-25 10:16:32.798019 汽车 39371
2015-12-25 10:16:33.099540 轮船 38874
2015-12-25 10:16:33.362301 飞机 38770
2015-12-25 10:16:33.610782 火车 39765
2015-12-25 10:16:33.904479 汽车 39371
2015-12-25 10:16:34.184339 轮船 38874
2015-12-25 10:16:34.422873 飞机 38770
2015-12-25 10:16:34.714822 火车 39765
2015-12-25 10:16:34.986098 汽车 39371
2015-12-25 10:16:35.228974 轮船 38874
2015-12-25 10:16:35.480587 飞机 38770
2015-12-25 10:16:35.720192 火车 39765
2015-12-25 10:16:36.017358 汽车 39371
2015-12-25 10:16:36.314360 轮船 38874
2015-12-25 10:16:36.553009 飞机 38770
2015-12-25 10:16:36.800480 火车 39765

#17


引用 16 楼 pcboyxhy 的回复:
import datetime
import time
import urllib

while True:
    for a in ['飞机', '火车', '汽车', '轮船']:
        url = r'http://ss.gkstk.com/cse/search?q='+a+r'&click=1&s=11259993741189624235' 
        req = urllib.urlopen(url)
        print datetime.datetime.now(), a, len(req.read())
        req.close()


2015-12-25 10:16:22.498518 飞机 38770
2015-12-25 10:16:22.754490 火车 39765
2015-12-25 10:16:23.016036 汽车 39371
2015-12-25 10:16:23.260760 轮船 38874
2015-12-25 10:16:23.498307 飞机 38770
2015-12-25 10:16:23.765754 火车 39765
2015-12-25 10:16:24.050302 汽车 39371
2015-12-25 10:16:24.328333 轮船 38874
2015-12-25 10:16:24.583839 飞机 38770
2015-12-25 10:16:24.882681 火车 39765
2015-12-25 10:16:25.180508 汽车 39371
2015-12-25 10:16:25.496497 轮船 38874
2015-12-25 10:16:25.771734 飞机 38770
2015-12-25 10:16:26.001684 火车 39765
2015-12-25 10:16:26.235687 汽车 39371
2015-12-25 10:16:26.469926 轮船 38874
2015-12-25 10:16:26.754045 飞机 38770
2015-12-25 10:16:27.160544 火车 39765
2015-12-25 10:16:27.399948 汽车 39371
2015-12-25 10:16:27.656756 轮船 38874
2015-12-25 10:16:27.897737 飞机 38770
2015-12-25 10:16:28.163222 火车 39765
2015-12-25 10:16:28.445390 汽车 39371
2015-12-25 10:16:28.676750 轮船 38874
2015-12-25 10:16:28.914525 飞机 38770
2015-12-25 10:16:29.180840 火车 39765
2015-12-25 10:16:29.420131 汽车 39371
2015-12-25 10:16:29.726095 轮船 38874
2015-12-25 10:16:29.967524 飞机 38770
2015-12-25 10:16:30.205105 火车 39765
2015-12-25 10:16:30.507945 汽车 39371
2015-12-25 10:16:30.822356 轮船 38874
2015-12-25 10:16:31.114813 飞机 38770
2015-12-25 10:16:31.423173 火车 39765
2015-12-25 10:16:31.713391 汽车 39371
2015-12-25 10:16:32.008701 轮船 38874
2015-12-25 10:16:32.275053 飞机 38770
2015-12-25 10:16:32.521600 火车 39765
2015-12-25 10:16:32.798019 汽车 39371
2015-12-25 10:16:33.099540 轮船 38874
2015-12-25 10:16:33.362301 飞机 38770
2015-12-25 10:16:33.610782 火车 39765
2015-12-25 10:16:33.904479 汽车 39371
2015-12-25 10:16:34.184339 轮船 38874
2015-12-25 10:16:34.422873 飞机 38770
2015-12-25 10:16:34.714822 火车 39765
2015-12-25 10:16:34.986098 汽车 39371
2015-12-25 10:16:35.228974 轮船 38874
2015-12-25 10:16:35.480587 飞机 38770
2015-12-25 10:16:35.720192 火车 39765
2015-12-25 10:16:36.017358 汽车 39371
2015-12-25 10:16:36.314360 轮船 38874
2015-12-25 10:16:36.553009 飞机 38770
2015-12-25 10:16:36.800480 火车 39765
我用你的代码在我电脑也会中段 
>>> 
2015-12-25 10:32:22.407000 飞机 38766
2015-12-25 10:32:22.879000 火车


请问这是电脑哪里出问题了 应该不是代码问题了。

#18


fileO = open("/Users/potter/PycharmProjects/searchString/sp/123.txt","r")

all_utf = fileO.read().decode("utf-8")

# print all_text
# print all_utf
names = re.findall(ur'@"(\w*[\u4e00-\u9fa5]*)"',all_utf, re.I)