# _*_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类型的数据啊
老师,怎么和视频上不一样,没有打印关于百度的信息
代码和视频的都一模一样,访问页成功了,返回的是200,xpath路径页没有错,但是为什么获取不到图片的地址啊
可以换一个网站吗 笔趣阁倒辣
所需的功能 - 应用 (appium.io) http://appium.io/docs/en/writing-running-appium/caps/#appium-desired-capabilities
文档里的这个显示404,显示不出来
老师这是版本还是啥
老师,这个怎么解决啊?前面加上了sudo还是不行的
from urllib.request import Request, urlopen from urllib.parse import quote def get_html(ur1): headers = { "User_agent":"Mozilla/4.0(compatible;MSIE7.0;WindowsNT5.1;TheWorld)" } request = Request(ur1, headers = headers) response = urlopen(request) return response.read().decode() def save_html(html,filename): with open(filename, 'w', encoding='utf-8') as f: f.write(html) def main(): ur1 = 'https://tieba.baidu.com/f/search/res?ie=utf-8&qw=%E5%88%BA%E5%AE%A2%E4%BF%A1%E6%9D%A1&red_tag=3423937163' html = get_html(ur1) save_html(html, filename) if __name__ == '__main__': main()
老师这个怎么解决呢
像这种的吗
老师那个xpath你那有安装包么?可用安装包的网站,或者百度网盘分享一下?
老师linux的网络启用命令是什么,我的linux网络连接不上
老师,如何爬取移动端的数据,我fidder现在已经能够抓到移动端的数据,但是不知道代码这些应该怎么写
from fake_useragent import UserAgent import requests from lxml import etree from time import sleep def get_html(url): ''' :param url: 要爬取的地址 :return: 返回html ''' headers = {"User-Agent": UserAgent().chrome} resp = requests.get(url, headers=headers) if resp.status_code == 200: resp.encoding = 'utf-8' return resp.text else: return None def parse_list(html): ''' :param html: 传递进来一个有电影列表的html :return: 返回一个电影列表的url ''' e = etree.HTML(html) list_url = ['http://maoyan.com{}'.format(url) for url in e.xpath('//div[@class="movie-item film-channel"]/a/@href')] return list_url def pares_index(html): ''' :param html: 传递进来一个有电影信息的html :return: 已经提取好的电影信息 ''' e = etree.HTML(html) name = e.xpath('//h1[@class="name"]/text()') type = e.xpath('//li[@class="ellipsis"]/a[1]/text()') actors = e.xpath('//div[@class="celebrity-group"][2]/ul[@class="celebrity-list clearfix"]/li/div/a/text()') actors = format_data(actors) return {"name": name, "type": type, "actors": actors} def format_data(actors): actor_set = set() for actor in actors: actor_set.add(actor.strip()) return actor_set def main(): num = int(input('请输入要获取多少页:')) for page in range(num): url = 'http://maoyan.com/films?showType=3&offset={}'.format(page*30) list_html = get_html(url) list_url = parse_list(list_html) for url in list_url: info_html = get_html(url) movie = pares_index(info_html) print(movie) if __name__ == '__main__': main()
运行的时候没有反应
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2026百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637