上课的文档能不能统一一下,有些打不开,有些打开很乱。
代码:
from urllib.request import Request,urlopen,HTTPCookieProcessor,build_opener from fake_useragent import UserAgent from http.cookiejar import MozillaCookieJar from urllib.parse import urlencode def get_cookie(): url = "https://conch.xiami.com/api/passports/login?_xm_cf_=X7XmPS6phj26eeGtm36-k9NS" form_data={ "user":13629949237, "password":"hgc950226" } headers={"User-Agent":UserAgent().random} rep=Request(url,headers=headers,data=(urlencode(form_data).encode())) cookiejar=MozillaCookieJar() handle=HTTPCookieProcessor(cookiejar) opener=build_opener(handle) resp=opener.open(rep) cookiejar.save("cookie.txt",ignore_discard=True,ignore_expires=True) get_cookie() add_url="https://conch.xiami.com/"
结果:
老师请问一下,我使用cookie登录虾米音乐的时候,为什么会出现这个问题?
老师,您好
为什么防检测设置里的演示代码
没有设置驱动还可以成功
老师,运行之后没有显示出txt文件。怎么解决
selenium如何解决重定向强制跳转网页这个问题?
好好突然就说要重启shell是什么原因啊
# 开发工具是pycharm import re import requests from fake_useragent import UserAgent url = '} resp = requests.get(url, headers=headers) with open('tem.html','wb') as f: f.write(resp.content) """ 运行我的代码后保存本地的html文件中,就没有中文乱码,是不是我和 老师的保存方式不同,而和老师的结果有偏差? """
老师我在软件测试的视频中看到老师可以删除等待输入的竖线后面的字符,怎么实现的?
能看看这个报错吗
一、问题描述如下:
第一种登录方法
header信息内包含cookie信息,然后进行登录已经学会了。
第二种登录方法
首先爬虫登录,然后再进入用户界面。这个方法不会!
登录部分的爬虫,登录不成功,老师您帮忙解决下啊?
二、以下自己写的登录的爬虫代码:
from fake_useragent import UserAgent import requests login_url = "https://www.xiami.com/api/passport/login?_s=5f6dc7cd6de10b55330ddb181589a6bb&_xm_cf_=Dm7tbk5qvorx05qWM87w--zx" headers = { "User-Agent": UserAgent().random } form_data = { "account":"18233301608", "ncoSessionid":"01TYfee2_GraAMkskrBwFyr5N7Hv36ALHbgXhvniqZTFsla5-L3b7D7lHGFGTpBVKZD9bU_PCl1vapuvprHnGq5uy5tCnEO9h2-vlgYxj5u3kjftngikzTT5sGq4pMdRq_YjfjlKJ8sNRNxP0SdMi4Mn1uWsoswSwPHIca11tLxwc", "ncoSign":"05zCa5bJg-baNHof555vbNZh-c4S-6BY4BY4oXagczXJ6s4Zn5_UziyXeRCV6VTqDs3pl74vefKQJO1qRNtp3kWGyOunuJCMzvoZ8LCn4K7TmnETjhCtS2bqSoecARmW8A0vkKi9EXfHhYqQbQe4fZn9zdhIyz8AtvGLOoXsgWLLT-3SMVKvtgjWnUdFluC-EDnTMba0kZB5uk-lwptZzKDfJ2_J7undVWJgij0UvgjeFuJLXENJ4nh0_zZihR6GiYaPxXA0g109iuZuxKA_vhQJ-J0LlTG3BLKmOIybjsfjEyJcPJNqY-sE0xcOYoQrLlYPyk687rhKB-gEBCdjZyquhjg7OLw1QvNS1gEqvH2R5kmlQd5pmnin3iI8mucMm3pmQvOFg1n_tYHxBng4JfqQ", "ncoToken":"web_login_1564504886255_0.08087377440410681", "password":"e10adc3949ba59abbe56e057f20f883e" } resp = requests.post(login_url,headers=headers,data=form_data) print(resp.text)
三、以下是如何抓取登录的url,跟用户的账号密码等信息信息。
url
url.png
用户信息
用户信息.png
如果以上操作不正确,还请老师您给改正!
老师,视频里面的网页版的教程在哪能看到
from scrapy.cmdline import execute execute('scrapy crawl baidu'.split())
老师请问一下,为什么我运行execute代码的时候直接报错了,而且我创建的baidu.py文件中的def parse(self,response)中的self,response这里提示我也有问题,请问老师这个是什么原因?
老师,start01.bat点击后只闪了一下就结束了,内容看不出有什么问题
老师,我这个打印不出来内容是为啥,看下面的评论说没联网,可是我网络也没问题啊
代码:
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) # sleep(2) 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('//dd/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('//div/h1/text()')[0] type = e.xpath('//div/ul/li[@class="ellipsis"]/a/text()')[0] 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 = "https://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()
def parse_info(self, response): total_price = response.xpath('concat(//span[@class="total"]/text(),//span[@class="unit"]/span/text())').extract_first() community_name = response.xpath('//div[@class="communityName"]/a[@class="info"]/text()').extract_first() area_name = response.xpath('string(//div[@class="areaName"]/span[2])').extract_first()
老师为什么我获得response之后用xpath提取信息,能够正确获得总价total_price,但是小区名称就一直返回None,xpath表达式没有错,在浏览器上用xpath helper也能提取出来,就是pycharm调试的时候不行
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637