老师,我按照要求配置,还是显示
# _*_coding=utf-8 _*_ from time import sleep import requests from fake_useragent import UserAgent from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as ec from selenium.webdriver.common.by import By from huadong import distance, track def save_img(): url = 'https://www.sf-express.com/cn/sc/dynamic_function/waybill/#search/bill-number/SF1406050054883' chrome = webdriver.Chrome() chrome.get(url) wait = WebDriverWait(chrome, 5) try: wait.until(ec.presence_of_element_located((By.ID, 'tcaptcha_popup'))) # 切换窗口 chrome.switch_to_frame('tcaptcha_popup') # 获取图片 img = chrome.find_element_by_id('slideBkg') img_src = img.get_attribute('src')[:-1] # 下载图片 download_img(img_src + '1', 'ctp1.png') download_img(img_src + '2', 'ctp2.png') # 获取滑动的距离 tmp_distance = distance.get_long() # 生成滑动轨迹 tk = track.get_track(tmp_distance-12) # 滑动按钮 # 选中按钮 button = chrome.find_element_by_id('tcaptcha_drag_button') webdriver.ActionChains(chrome).click_and_hold(button).perform() # 按轨迹滑动按钮 for t in tk: webdriver.ActionChains(chrome).move_by_offset(xoffset=t,yoffset=0).perform() # 释放按钮 webdriver.ActionChains(chrome).release().perform() # 休眠2秒 sleep(2) chrome.quit() except Exception as e: print(e) chrome.quit() def download_img(url, filename): # print(url) headers = { 'User-Agent': UserAgent().chrome } resp = requests.get(url, headers=headers) with open(f'./imgs/{filename}', 'wb') as f: f.write(resp.content) if __name__ == '__main__': save_img()
老师为啥报这个错误,,路径啥的都对啊
老师为啥我使用streamlit模块时 报这个错误, 查看图片是正常的,
# _*_coding=utf-8 _*_ import streamlit as st import cv2 def get_long(): img1 = cv2.imread('./imgs/ctp1.png') img2 = cv2.imread('./imgs/ctp2.png') # 建立两个 st 控制的变量 min_value = st.slider('input min value', max_value=500) max_value = st.slider('input max value', max_value=800) # 边缘化图片 # Canny使用的滞后阈值,代阈值,高阈值 canny1 = cv2.Canny(img1, min_value, max_value) # 保存图片 # cv2.imwrite('./imgs/tstf.png', canny1) # 使用streamlit输出结果 st.image(canny1) st.write(canny1) canny2 = cv2.Canny(img2, min_value, max_value) st.image(canny2) st.write(canny2) if __name__ == '__main__': get_long()
为啥我的显示process.argv is not a function node也装了啊 是自定义的方法吗
# _*_coding=utf-8 _*_ import base64 from Crypto.Cipher import DES class EncryptData(): def __init__(self, key): self.key = key self.length = DES.block_size self.des = DES.new(key, DES.MODE_ECB) def set_type(self, data): while len(data) % self.length != 0: data += b'\x00' return data def encrypt(self, data): d = self.set_type(data) rs = self.des.encrypt(d) msg = str(base64.b64encode(rs), encoding='utf-8') return msg def decrypt(self, data): rs = base64.b64decode(data.encode('utf-8')) rs = self.des.decrypt(rs) return rs if __name__ == '__main__': key = b'12345678' str = b'sxt' enc = EncryptData(key) encrypt_data = enc.encrypt(str) decrypt_data = enc.decrypt(encrypt_data) print(f'加密的数据为{encrypt_data}') print(f'解密的数据为{decrypt_data}')
老师这是啥问题啊 , bytes对象不可调用? 但是base64加密就是需要bytes类型的数据啊
import requests from fake_useragent import UserAgent from bs4 import BeautifulSoup from time import sleep def get_list(): num = int(input("请输入要获取多少页数据:")) for i in range(num): url = "https://maoyan.com/films?showType=3&offset={i*30}" headers = {'User-Agent':UserAgent().chrome} resp = requests.get(url,headers=headers) soup = BeautifulSoup(resp.text,'lxml') all_a = soup.select('div > a[data-act="movies-click"]') print(all_a) return [a.get('href') for a in all_a] # 格式化演员集合,去重 def format_actors(a_list): actor_set = set() for a in a_list: actor_set.add(a.text.strip()) # 需要a标签里的文本,去除空格 return actor_set def start(): all_href = get_list() for a in all_href: sleep(2) url = f"https://maoyan.com{a}" headers = {'User-Agent':UserAgent().chrome} resp = requests.get(url,headers=headers) soup = BeautifulSoup(resp.text,'lxml') name = soup.select('h1.name')[0].text.strip() types = soup.select('li.ellipsis')[0].text.strip() actors_m = soup.select('li.celebrity.actor > div > a') actors = format_actors(actors_m) print(f'电影名:{name} 电影类型:{types} 演员:{actors}') if __name__ == '__main__': start()
老师,帮我看看这是为什么?我的输出没有结果!
from pymongo import MongoClient
# 获取链接
c1 = MongoClient('localhost',27017)
c2 = MongoClient('mongodb://localhost:27017')
# 获取数据库实例
db = c1.sxt
db2 = c1["sxt"]
print(db == db2)
# 获取集合
p1 = db.person
p2 = db['person']
print(p1==p2)
#操作数据
for p in p1.find():
print(p)
连接没问题,输出不出来数据
''' 出现中文乱码的问题,编码形式改为‘utf-8’; 出现\u这种问题,照着dumps()方法中的ensure_ascii=False进行修改。 ''' import json str_1 = '{"name":"战狼3"}' print(type(str_1)) # 返回<class 'str'> print(str_1) #返回{"name":"战狼3"} print('----str_1 to obj_1----') # 把Json格式字符串解码转换成Python对象 obj_1 = json.loads(str_1) print(obj_1) # 返回{'name': '战狼3'} print(type(obj_1)) # 返回<class 'dict'> print('----obj_1 to str_2----') # 实现python类型转化为json字符串,返回⼀个str_2对象 str_2 = json.dumps(obj_1) # str_2返回Unicode编码 # str_2 = json.dumps(obj_1,ensure_ascii=False) # 将ensure_ascii=False,可使Unicode编码转为原生编码 print(str_2) # 未将ensure_ascii=False,则返回{"name": "\u6218\u72fc3"} # print(str_2) # 将ensure_ascii=False,则返回{"name": "战狼3"} print(type(str_2)) # 返回<class 'str'> print('----obj_1 to file----') # obj_1 to file,将Python内置类型序列化为json对象后写⼊⽂件 json.dump(obj_1,open('movie.txt','w',encoding='utf-8',ensure_ascii=False)) # 写文件movie.txt print('----file to obj_2----') # file to obj_2,读取⽂件中json形式的字符串元素 转化成python类型 obj_2 = json.load(open('movie.txt',encoding='utf-8')) print(obj_2) # encoding = 'utf-8',返回{'name': '战狼3'} print(type(obj_2)) # 返回<class 'dict'>
老师,你好,我测试了一下这个错误点一个是在开头注释的\u,然后还有写movie文件中的ensure_ascii=False,好像是无效的关键字参数,那我写在注释里的\u为什么是错的,然后还有‘写文件’中出现这样的情况怎么把它改成中文。对于这个编码之间的转换不太了解,试着掌握很多次了,可印象还是不深刻。
老师这怎么切换linux默认的python版本啊
老师可以分享一下软件安装吗 ,官网下载不了
还有59 60 这两节啊 不是只有一节黑屏
老师,点运行一直下面这个界面,显示的看不到
老师这个章节没画面啊 黑屏了
老师这是啥原因debug看url 之类的都没问题啊 数据爬取不出来而且还报这个
scrapy02.zip
from fake_useragent import UserAgent import requests import re url="https://www.qiushibaike.com/text/" headers={ "User-Agent":UserAgent().chrome } response=requests.get(url,headers=headers) print(response.text) contents = re.findall(r'<div class = "content">\s*<span>\s*(.+)',response.text) with open('qiushi.txt','a',encoding='utf-8') as f: for info in contents : f.write(info+"\n\n") 老师,运行后txt文本里没有数据,麻烦您帮我看一下
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637