python爬虫爬取不到文本信息

用python爬取万方的专利文本信息,
代码如下,可以到搜索界面进行搜索,但是每次搜索都提示搜索不到内容
请问一下各位,是代码有问题还是万方反爬啊
应该怎么解决啊

img

img

img

img

img

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7521860
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Python编写一个装饰器,使其能够打印输出所装饰函数的运算时间【简单易懂,代码可以直接运行】
  • 同时,你还可以查看手册:python- 使用二进制数据记录格式 中的内容
  • 除此之外, 这篇博客: 使用 Python 创建照片马赛克(实验楼实验),源代码已经包含课后作业。中的 这部分源码包含了第二道练习题,所以图片效果是每个小图片之间都有黑色的小块。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
  • 原图效果:
    • 在这里插入图片描述

    没有做课后题的源码的效果图:
    在这里插入图片描述

    -第二道题目做法:在createImageGrid函数中创建 3*3像素的小黑块, 语句是:gap = Image.new('RGB', (3, 3)),当然你想要其他的小块也可以,把语句更改为:gap = Image.new('RGB', (3, 3),(255, 255, 255))(这就是小白块了),输入自己想要的R、G、B值,就可以随心所欲更改渐变颜色了。当粘贴替换图片小块后,继续贴小黑块语句是:grid_img.paste(gap, (col * width , row * height )),就产生了想要的效果。

    • 小黑块效果图:
      在这里插入图片描述

    小白块效果图:
    在这里插入图片描述

    • 第一道题目:
      得到图片的块状版本。
      思路:将图片分割成若干小块,然后再粘贴成完整图像。

    源代码:

    
    """
    打开图像,分割图像,将分割好的小块粘贴(可以只要原来的四分之一,来降低像素),保存。
    """
    import os
    from PIL import Image
    
    
    #图像路径
    target_image1 = '.\\test-data\\专属.jpg'
    #分割图形
    def splitImage(image, size):
    
    	"""
    	将图像按照网格分成多个小图像
    	@param {Image} image Pil Image
    	@return {List[Image]} 小图像列表
    	"""
    	#image = Image.open(target_image)
    	#获得原始图像尺寸
    	W, H = image.size[0], image.size[1]
    	# print(image.size)
    	# print(size[1])
    	#分划的小图像个数 m * n
    	m, n = size
    	#小图像的尺寸
    	w, h = int(W / n), int(H / m)
    	#分割好的小图像放在列表中
    	imgs = []
    	
    	#遍历
    	for j in range(m):
    		for i in range(n):
    			#得到小图像并加入到imgs列表
    			imgs.append(image.crop((2 * i * w, 2 * j *h, (2 * i + 1) * w, (2 * j + 1) * h)))
    			
    	return imgs
    #粘贴图像
    def createImageGrid(images, dims):
    	"""
    	将图形列表里的小图像按先行后列的顺序拼接为一个大图像
    	
    	@param {List[Image]} images 小图像列表
    	@param {Tuple[int, int]}  dims 大图像的行数和列数
    	@return Image 拼接得到的大图像
    	"""
    	
    	m, n = dims
    	
    	# #确保小图像个数满足要求
    	# assert m *n  == len(images)
    	#计算小图像的最大尺寸
    	width = max([img.size[0] for img in images])
    	height = max([img.size[1] for img in images])
    	
    	#创建大图像对象
    	grid_img = Image.new('RGB', (int(n * width / 2), int(m * height / 2 )))
    	
    	#将小图像粘贴到大图像
    	
    	for index in range(len(images)):
    		#计算要粘贴到的行
    		row = int(index / n)
    		#计算粘贴到的列
    		col = index - n * row
    		
    		#粘贴
    		grid_img.paste(images[index], (col * width, row * height))
    		
    	return grid_img
    	
    	
    def main():
    	#打开图形
    	target_image = Image.open(target_image1)
    	#分割图形
    	target_images =splitImage(target_image,[128, 128])
    	#粘贴新图形
    	mosaic_image = createImageGrid(target_images, [128, 128])
    	#保存
    	output_filename = 'mosaic1.png'
    	#mosaic_image.save(output_filename)
    	mosaic_image.save('D:\python项目\\照片马赛克\\masaka1.png')
    
    if __name__ == '__main__':
    	main()
    

    原图:
    在这里插入图片描述
    块状处理后效果:
    在这里插入图片描述

  • 您还可以看一下 程序员学院老师的Python数据分析与挖掘从零开始到实战课程中的 数组属性和数组索引小节, 巩固相关知识点

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^