DOM初心者 2019-10-16 09:48 采纳率: 0%
浏览 510

TypeError: 'unicode' object is not callable 错误 python2.7

刚学python 写的def的线程都不可用,于是模仿别人单线程直接插多线程,就出现以下错误,写的爬虫,线程是出来了,但是就是不能调用unicode,求大神解答

# -*- coding: utf-8 -*

import sys
reload(sys)
sys.setdefaultencoding('utf8')

import requests
import re
import time
import threading
import sys
import Queue as queue
import sys
import datetime

live = open('未爬.txt','w')
die = open('已爬.txt','w')
input_queue = queue.Queue()



list = raw__input("--> Enter Lists : ")
thread = input(" -> Thread : ")
link = “************”
head = {'User-agent':'Mozilla/5.0 (Linux; U; Android 4.4.2; en-US; HM NOTE 1W Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/11.0.5.850 U3/0.8.0 Mobile Safari/534.30'}
s = requests.session()
g = s.get(link, headers=head)
list = open(list, 'r')_

print('')
print("-"*50)
print("-"*50)


while True:

        网页导入 = list.readline().replace('\n','')
        if not www:
            continue
        bacot = email.strip().split(':')
        xxx = {''************''}

        cek = s.post(link, headers=head, data=xxx).text
        if "************" in cek:
            print("|未爬|----->"+网页+"")
            live.write(网页+"\n")
        else: 
            print("|已爬 | -----> "+网页+" ")
            die.write(网页+"\n")

        for x in range(int(thread)):
            t = threading.Thread(target=cek)
            t.setDaemon(True)
            t.start()


print('')
print('-------------------------------------------------')
print('')_

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-07-29 22:41
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    from __future__ import unicode_literals
    import sys
    reload(sys)
    sys.setdefaultencoding('utf8')
    
    class MyThread(threading.Thread):
        def run(self):
            while True:
                try:
                    content = self.input_queue.get_nowait()
                    print(content)
                except queue.Empty:
                    break
    
    if __name__ == '__main__':
        input_queue = queue.Queue()
        thread = int(input("Please enter the number of threads to use: "))
        link = "http://example.com"
        head = {'User-Agent': 'Mozilla/5.0 (Linux; U; Android 4.4.2; en-US; HM NOTE 1W Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/11.0.5.850 U3/0.8.0 Mobile Safari/534.30'}
    
        # 获取网页内容
        response = requests.get(link, headers=head)
    
        # 将获取到的内容写入文件中
        with open('test.txt', 'wb') as f:
            f.write(response.content)
    
        # 创建一个队列来存储需要处理的任务
        tasks = [MyThread() for _ in range(thread)]
    
        # 启动所有任务
        for task in tasks:
            task.start()
    
        # 等待所有任务完成
        for task in tasks:
            task.join()
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何制作永久二维码,最好是微信也可以扫开的。(相关搜索:管理系统)
  • ¥15 delphi indy cookie 有效期
  • ¥15 labelme打不开怎么办
  • ¥35 按照图片上的两个任务要求,用keil5写出运行代码,并在proteus上仿真成功,🙏
  • ¥15 免费的电脑视频剪辑类软件如何盈利
  • ¥30 MPI读入tif文件并将文件路径分配给各进程时遇到问题
  • ¥15 pycharm中导入模块出错
  • ¥20 Ros2 moveit2 Windows环境配置,有偿,价格可商议。
  • ¥15 有关“完美的代价”问题的代码漏洞
  • ¥15 请帮我看一下这个简易化学配平器的逻辑有什么问题吗?